On 23 November 2012 16:19, Max Leske <[email protected]> wrote: > I did some more digging and I found that I was wrong before: every child > process I create through NB is killed immediately and becomes a zombie > (that's why it ignored the kill). Once I had that information I implemented > the waitpid() call and can now cleanup my zombie children. > This would also explain (at least to my mind) why the child code (pid = 0 > ifTrue: [ … ]) is never executed. > > Now, my question is, who terminates my child processes? > > The processes are terminated with SIGABRT; all of the above also applies to > vfork(). I found that there's a crash report being generated for that aborted > process so I'm attaching it here, maybe you'll see something I missed. > > Max >
i would start from here: > > Application Specific Information: > *** multi-threaded process forked *** > abort() called > http://www.linuxprogrammingblog.com/threads-and-fork-think-twice-before-using-them damn... why unix (POSIX) kernels don't have spawn_exec() which spawns a new process without need to do a fork() in current? -- Best regards, Igor Stasenko.
