in reply to Debugging an exe with GDB using PERL
This looks very much like a continuation of join() in perl threads does not return.
I don't see how the discussion there entered this code.
In your subroutine kill, you wait for gdb.exe to end before trying to taskkill it. I think that is the wrong way around. If gdb.exe waits for some input, either give it the input or start it in a way that it doesn't expect user input in any way. Personally, I would redirect all its output to logfiles instead of NUL: to see where it hangs maybe.
Also, if you're just trying to run some commands asynchronously on Windows, consider using the system(1, ...) form of system (see perlport), as I recommended in my last reply to your questions. But maybe you have already done so and can tell us how that failed to reach your goal(s).
|
|---|