The Single UNIX ® Specification, Version 2
Copyright © 1997 The Open Group


pthread_mutexattr_init, pthread_mutexattr_destroy - initialise and destroy mutex attributes object


#include <pthread.h>

int pthread_mutexattr_init(pthread_mutexattr_t *attr);
int pthread_mutexattr_destroy(pthread_mutexattr_t *attr);


The function pthread_mutexattr_init() initialises a mutex attributes object attr with the default value for all of the attributes defined by the implementation.

The effect of initialising an already initialised mutex attributes object is undefined.

After a mutex attributes object has been used to initialise one or more mutexes, any function affecting the attributes object (including destruction) does not affect any previously initialised mutexes.

The pthread_mutexattr_destroy() function destroys a mutex attributes object; the object becomes, in effect, uninitialised. An implementation may cause pthread_mutexattr_destroy() to set the object referenced by attr to an invalid value. A destroyed mutex attributes object can be re-initialised using pthread_mutexattr_init(); the results of otherwise referencing the object after it has been destroyed are undefined.


Upon successful completion, pthread_mutexattr_init() and pthread_mutexattr_destroy() return zero. Otherwise, an error number is returned to indicate the error.


The pthread_mutexattr_init() function may fail if:
Insufficient memory exists to initialise the mutex attributes object.

The pthread_mutexattr_destroy() function may fail if:

The value specified by attr is invalid.

These functions will not return an error code of [EINTR].








pthread_create(), pthread_mutex_init(), pthread_mutexattr_init(), pthread_cond_init(), <pthread.h>.


Derived from the POSIX Threads Extension (1003.1c-1995)

UNIX ® is a registered Trademark of The Open Group.
Copyright © 1997 The Open Group
[ Main Index | XSH | XCU | XBD | XCURSES | XNS ]