my %kid; for (1..50) { my $pid = fork; $kid{$pid} = undef, next if $pid; next if not defined $pid; # in child undef %kid; close STDERR; close STDOUT; close STDIN; for (1..60) { $log->send(" Child $0: Message #$_\n"); } exit 0; } # No Zombies! delete $kid{wait()} while %kid;