Xref: utzoo comp.unix.questions:16432 comp.unix.wizards:18251 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!uunet!virtech!cpcahil From: cpcahil@virtech.UUCP (Conor P. Cahill) Newsgroups: comp.unix.questions,comp.unix.wizards Subject: Re: defunct processes even after signal(...wait()) Keywords: signal , wait and defunct processes ... Message-ID: <1183@virtech.UUCP> Date: 20 Sep 89 02:02:35 GMT References: <230@cerc.wvu.wvnet.edu.edu> Distribution: usa Organization: Virtual Technologies Inc Lines: 23 In article <230@cerc.wvu.wvnet.edu.edu>, kannan@cerc.wvu.wvnet.edu (R. Kannan) writes: > We are faced with a strange problem. Even though we have the > int ChildInt () { wait((union wait *)0); } > > signal(SIGCHLD, ChildInt); > > when we really try to fork at a very rapid rate, we end up with > some defunct (ZOMBIE ) processes. > Is a SUN 4 environment. COuld some one explain to us what > could be wrong? and possible solutions. It *sounds like* you are loosing some of the sigchlds. Since you are running under the sun os I would recommend using the BSD signal handling mechanisms which should handle the problem. -- +-----------------------------------------------------------------------+ | Conor P. Cahill uunet!virtech!cpcahil 703-430-9247 ! | Virtual Technologies Inc., P. O. Box 876, Sterling, VA 22170 | +-----------------------------------------------------------------------+