in reply to Fork Windows

What kind of volume do your applications have? Assuming a basic intranet scenario, I would highly recommend just going out and getting a free webserver that works on Windows. You can even run (albeit very inefficiently) Apache with mod_perl in pre-fork mode.

That said, the likely cause of your problem is that Windows doesn't really support the fork command. So it is emulated in Perl using threads. That works OK for very simple stuff. But that emulation breaks down when you start doing complex signal handling. For instance you can't predict which thread will receive a signal, so how can you reliably handle signals differently in child threads and in the controlling thread?

If you want to go down this route I would suggest using a module like Win32::Process to spawn your child processes. That way you have real processes that you can manipulate with the Win32 API.