httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Paul J. Reder" <>
Subject Re: Need access to apr_sigwait from threaded mpm.
Date Fri, 13 Apr 2001 19:15:49 GMT
Ryan, wrote:
> We had the join logic in the code for a while, and we removed it at some
> point, although I can't remember why.  Please take a look in the CVS logs.
> I am a bit busy today, becuase Covalent is moving offices (need more
> space), so I am having a hard time actually doing work right now.  The
> easiest way to do this in my mind, though, is to have each thread
> decrement a counter as it dies.  The core knows how many threads it has,
> so we know when they have all died.

This is what the code currently does. worker_thread increments/decrements
the worker_thread_count variable inside a mutex. The problem seems to be
the window at the end of the worker_thread after is has decremented and
released the mutex and before it exits. I am seeing cases where the child_main
process thinks that worker_thread_count == 0, but threads haven't exited
yet. If child_main exits, then threads are orphaned. That is the reason
that some after-thread-exit processing (like a join) needs to happen.

I will look through cvs for the deleted join logic. Was it in the signal.c,
the mpms, or somewhere else (you can say you don't remember - just thought
I'd ask to save time).


Paul J. Reder
"The strength of the Constitution lies entirely in the determination of each
citizen to defend it.  Only if every single citizen feels duty bound to do
his share in this defense are the constitutional rights secure."
-- Albert Einstein

View raw message