http://qs321.pair.com?node_id=997132


in reply to Signals vs. Windows

If the child thread doesn't complete within some time limit, the parent sends the child a signal, and the child in turn attempts to kill the external process.
If this is Windows-only code, and the intent is to run an external command with a time limit, I suggest you take a look at the Win32::Job module. For a simple example of using it, see Re: Timing Windows commands.

Since signals don't play nicely with threads generally and since signals are not part of the native Win32 API, I would stay away from signals for your application.