Does PTHREAD_MUTEX_INITIALIZER work?

Anders Torger torger at ludd.luth.se
Thu Mar 11 07:16:19 PST 2004


On Thursday 11 March 2004 15.07, you wrote:
> Anders Torger wrote:
> >Do the PTHREAD_MUTEX_INITIALIZER and PTHREAD_COND_INITIALIZER macros
> >really work?
> >
> >What puzzles me is that pthread.h says:
> >
> >#define PTHREAD_MUTEX_INITIALIZER       NULL
> >#define PTHREAD_COND_INITIALIZER        NULL
> >
> >that is the initialisers are NULL.
> >
> >I get some strange random temporary lockups and deaths in my program
> >when running it on FreeBSD (5.0), while it works flawlessy on Linux,
> >and one reason could perhaps be that the initialisers do not work on
> >FreeBSD.
>
> 5.0 is an early new technology release, I would suggest using 5.2.1
> when reporting issues.

PTHREAD_MUTEX_INITIALIZER is defined as NULL in 5.2.1 too. I shall test 
the software on that platform later though. However, it would be nice 
if someone could explain this NULL thing (it is not NULL on other 
pthread implementations I have looked at). Perhaps there is a perfectly 
natural explanation?

/Anders Torger


More information about the freebsd-threads mailing list