in reply to External controlling of a multi-threaded Windows perl program

Unfortunately Windows does not support signals

Not properly, anyway. But there plenty of alternatives - it really depends on what you want to do. "Signalling" another process can be done using Windows events. Just have a thread waiting on a specified event, and write a small command-line program to raise it.

Alternatively, CTRL-C (SIGINT) type events (and a couple of others) can be raised using the Win32 API GenerateConsoleCtrlEvent. Use SetConsoleCtrlHandler to catch it (a bit like a signal handler). Since all processes sharing the same console (even when it is hidden with SW_HIDE) get the CTRL-C, it is possible to emulate the idea of a UNIX terminal group.
  • Comment on Re: External controlling of a multi-threaded Windows perl program