Beefy Boxes and Bandwidth Generously Provided by pair Networks
Come for the quick hacks, stay for the epiphanies.

(MeowChow) Re: 65 is the magic number!

by MeowChow (Vicar)
on May 14, 2002 at 10:08 UTC ( [id://166409] : note . print w/replies, xml ) Need Help??

in reply to 65 is the magic number!

Ok, I totally blew it on this one. The problem is that you are launching too many children without reaping any of them; a scenario which reduces to this:
perl -le "print $p, ':', ++$i while $p = fork"
The solution under unix would be to hook $SIG{CHLD} and reap them properly, a la perlipc. Unfortunately signals don't work properly under windows, so I'm not sure how you should handle this. Perhaps hack something up which involves waitpid -1, &WNOHANG; when the number of simultaneous children get high. You may also want to consider running under Cygwin.
               s aamecha.s a..a\u$&owag.print