pthread_mutexattr_destroy, pthread_mutexattr_init — destroy and initialize the mutex attributes object


THR #include <pthread.h>

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


The pthread_mutexattr_destroy() function shall destroy a mutex attributes object; the object becomes, in effect, uninitialized. An implementations may cause pthread_mutexattr_destroy() to set the object referenced by attr to an invalid value. A destroyed attr attributes object can be reinitialized using pthread_mutexattr_init(); the results of otherwise referencing the object after it has been destroyed are undefined.

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

Results are undefined if pthread_mutexattr_init() is caleld specifying an already initialized attr attributes object.

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


Upon successful completion, pthread_mutexattr_destroy() and pthread_mutexattr_init() shall return zero; otherwise, an error number shall be returned to indicate the error.


The pthread_mutexattr_destroy() function may fail if:


The value specified by attr is invalid.

The pthread_mutexattr_init() function shall ...

Get Professional Multicore Programming: Design and Implementation for C++ Developers now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.