This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: GCJ built multithreaded program keeps creating zombies
- From: Tom Tromey <tromey at redhat dot com>
- To: Wolfgang Bangerth <bangerth at ticam dot utexas dot edu>
- Cc: gcc-bugs at gcc dot gnu dot org, <aeby at graeff dot com>, <gcc-gnats at gcc dot gnu dot org>
- Date: 18 Dec 2002 16:36:11 -0700
- Subject: Re: GCJ built multithreaded program keeps creating zombies
- References: <Pine.LNX.4.44.0212181716310.15269-100000@gandalf.ticam.utexas.edu>
- Reply-to: tromey at redhat dot com
Wolfgang> When a process (and thus, here, also a thread) ends, it
Wolfgang> remains a zombie until its return valued is reaped by a
Wolfgang> waitpid call, which should also be what pthread_join
Wolfgang> does. So unless a thread is joined, it will remain a zombie.
Is this one of those places where Linux threads don't follow posix?
We create detached threads. My understanding is that such threads
*can't* be passed as an argument to pthread_join.
Incidentally the original reporter sent me email and said that this
was in fact not a libgcj problem. I'm including the relevant part of
this message:
Since the rt_sig queue under linux is of limitted size and the kernel
does not clean it up if a process decides to leave signals in the
queue some random time after booting the system the queue filled up
and multithreading stopped working.
I'm going to close the PR.
Tom