wait
wait
Waits for a child process to terminate and returns
the pid of the deceased process, or -1
if there are no child processes. The
status is returned in $?
. If
you get zombie child processes, you are probably calling either
this function or waitpid
. A
common strategy to avoid such zombies is:
$SIG{CHLD} = sub { wait };
If you expected a child and didn’t find it, you probably had
a call to system
, a close on a
pipe, or backticks between the fork
and the wait
. These constructs also do a
wait(2)
and may have harvested
your child process. Use waitpid
to avoid this problem.
18.191.176.228