On Jun 5, 2007, at 3:01 PM, Rob Wolfe wrote: > Thomas Dybdahl Ahle <[EMAIL PROTECTED]> writes: > >> But you can't ever catch sigkill. > > There is no protection against sigkill. > >> Isn't there a way to make sure the os kills the childprocess when the >> parrent dies? > > If the parent dies suddenly without any notification childprocesses > become zombies and there is no way to avoid that.
Apologies for picking nits... But actually *that* is an orphan process. When a parent process dies and the child continues to run, the child becomes an orphan and is adopted by init. Orphan processes can be cleaned up on most Unices with 'init q' (or something very similar). Zombies on the other hand, are those processes that have completed execution but still have an entry in the process table. The cause of zombies AFAIK, is a parent that has failed to call wait(2). To clean up zombies, you can send a SIGCHLD signal to the parent process -- probably with 'kill -17' (but use 'kill -l' to find out what it is on your system). hth, Michael --- "I would rather use Java than Perl. And I'd rather be eaten by a crocodile than use Java." — Trouser -- http://mail.python.org/mailman/listinfo/python-list