Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re: strange behaviour when forking lots of times

by Zaxo (Archbishop)
on May 16, 2006 at 04:57 UTC ( #549664=note: print w/replies, xml ) Need Help??


in reply to strange behaviour when forking lots of times

Caution when experimenting with this. It's a very effective fork bomb for slightly larger values of 10.

Perl fork behaves exactly like unistd.h fork(), except that the return value differs on failure. When fork fails, it returns undef instead of -1, as C fork() does.

Here's my forking idiom:

my %kid; { defined(my $cpid = fork) or warn $! and last; $cpid and $kid{$cpid} = undef, last; undef %kid; # in child now # do childish things exit 0; } # . . . delete $kid{wait()} while %kid;
There are other ways to avoid zombie kids. Which you choose depends on how your program flow is intended to go.

After Compline,
Zaxo

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://549664]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (5)
As of 2019-11-19 02:50 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Strict and warnings: which comes first?



    Results (93 votes). Check out past polls.

    Notices?