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:
There are other ways to avoid zombie kids. Which you choose depends on how your program flow is intended to go.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;
After Compline,
Zaxo
In reply to Re: strange behaviour when forking lots of times
by Zaxo
in thread strange behaviour when forking lots of times
by jesuashok
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |