Re: [Zope] why I don't use popen2 any more
Dennis Nichols writes:
... Zombies ... I *think* the really bad thing about these processes (called zombies?) is that they may have certain resources, such as files, held open. They are not *THAT* bad. All file descriptors are already closed, when the process enters the Zombie state. The only resource, it still helds, is the process resource. There is a per user limit and a system wide limit on process resources. Thus, if there are too many Zombies, you will no longer be able to create new processes.
And they are said to stay around until the process that created them dies itself. Unix is a social operating system: parents have responsibilities towards their offspring. Zombies are the children of bad, unsocial parents. They disappear, when either the parent dies itself (they are then reparented to a social parent) or the parent finally fulfills its obligations.
What Unix requires from a parent is, that it is interested at least in the childs death. The parent shows this interest by calling the wait system call ("os.wait"). Usually, the parent blocks until a child dies. But "wait" can be called with a non-blocking parameter. Dieter
participants (1)
-
Dieter Maurer