httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Trawick <trawi...@bellsouth.net>
Subject Re: cvs commit: apache-2.0/src/lib/apr/include apr.h.in
Date Tue, 02 May 2000 17:01:10 GMT
> In article <20000502030103.19470.qmail@locus.apache.org> you wrote:
> 
> > [...]
> >   Note that the behaviour of sigprocmask in a multi-threaded program is
> >   undefined. The AIX 4.3 documentation explicitly says "The
> >   sigprocmask, sigsetmask, and sigblock subroutines must not be used in
> >   a multi-threaded application."
> > [...]
> 
> I've currently not the time to consult my books, but I think that the
> behaviour of sigprocmask is not _undefined_ in a MT program. AFAIK POSIX
> actually defines the behaviour to be the same as for non-MT programs,
> i.e., sigprocmask() changes the signal mask of the underlaying process.
> Whether this is in sync with the thread's particular expections is a
> different point. But AFAIK it is pretty legal to use sigprocmask in a
> MT program. One just cannot assume that sigprocmask() changes only the
> threads signal mask. That's all...
>                                        Ralf S. Engelschall
>                                        rse@engelschall.com
>                                        www.engelschall.com

(This isn't directed at Ralf's comments specifically but it is related
to the general discussion.)

On a system such as OS/390 where sigprocmask() is the correct (and
only) way to change a thread's signal mask, what is an appropriate
mechanism to get dexter and mpmt_pthread to call sigprocmask() instead
of pthread_sigmask()?  I gather that we can't necessarily safely call
sigprocmask() just because a system has pthreads but doesn't have
pthread_sigmask()? 

Thanks...

-- 
Jeff Trawick | trawick@ibm.net | PGP public key at web site:
     http://www.geocities.com/SiliconValley/Park/9289/
          Born in Roswell... married an alien...

Mime
View raw message