Hi, dawn
I've looked at those modules already and will probably end up utilising Win32::Job on an XP box at some point. This has the benefit of easily being able to set a timeout for a command using $job->run($cmd,$timeout) which is a huge improvement for Win32 platforms.
I was really hoping I had made a glaring logic error (rather than fork() just playing up) in my use of fork...
If I can't get a simple case like this to work (does this work on another platform?) I'll have to resort to a more brute force method of divvying up work. :-(