httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ryan Bloom" <...@covalent.net>
Subject RE: [PATCH 2] worker MPM deadlock
Date Wed, 22 May 2002 14:05:28 GMT

Copying APR, because this is becoming an APR issue quickly.

> > > From: trawick@rdu88-251-253.nc.rr.com [mailto:trawick@rdu88-251-
> > >
> > > "Bill Stoddard" <bill@wstoddard.com> writes:
> > >
> > > > Is there a unix equivalent to the Win32 Sleep(0) call? If so,
then
> > we
> > > can rip out all this
> > > > cruft and use the patch I posted earlier.
> > >
> > > google for pthread_yield() and compare the doc with the doc for
> > > Win32's Sleep(0).  I suspect it is the same as long as we're
dealing
> > > with pthreads.
> >
> > The biggest problem with pthread_yield is that it doesn't always do
> > anything.  Some pthreads implementations don't really implement
> > pthread_yield, in fact, if I remember correctly AIX is one of those.
> 
> You are thinking about the old draft 7 pthread implementation in AIX
4.?
> (where ?=2 if I
> recall correctly).

Yep, you are correct, even down to AIX 4.2.

> 
> > I
> > could be wrong about AIX though.  I do know that when I first wrote
the
> > APR thread library, I specifically left out yield because it had
> > different results on different platforms.
> 
> You may be right but I would -hope- that a spec pthread implementation
> would handle
> pthread_yield() correctly...

The problem is that Single Unix doesn't even define pthread_yield, and
neither does the pthreads spec if I am reading it right.  It looks like
they both require sched_yield, which should do the same thing, however.
All I am saying is that this isn't a panacea, a lot more research would
be needed before pthread_ or sched_ yield could be considered portable.

Ryan



Mime
View raw message