.\" Copyright (c) 2017, Michael Kerrisk .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .TH pthread_mutexattr_init 3 2023-03-30 "Linux man-pages 6.04" .SH NAME pthread_mutexattr_init, pthread_mutexattr_destroy \- initialize and destroy a mutex attributes object .SH LIBRARY POSIX threads library .RI ( libpthread ", " \-lpthread ) .SH SYNOPSIS .nf .B #include .PP .BI "int pthread_mutexattr_init(pthread_mutexattr_t *" attr ");" .BI "int pthread_mutexattr_destroy(pthread_mutexattr_t *" attr ");" .fi .SH DESCRIPTION The .BR pthread_mutexattr_init () function initializes the mutex attributes object pointed to by .I attr with default values for all attributes defined by the implementation. .PP The results of initializing an already initialized mutex attributes object are undefined. .PP The .BR pthread_mutexattr_destroy () function destroys a mutex attribute object (making it uninitialized). Once a mutex attributes object has been destroyed, it can be reinitialized with .BR pthread_mutexattr_init (). .PP The results of destroying an uninitialized mutex attributes object are undefined. .SH RETURN VALUE On success, these functions return 0. On error, they return a positive error number. .SH STANDARDS POSIX.1-2008. .SH HISTORY POSIX.1-2001. .SH NOTES Subsequent changes to a mutex attributes object do not affect mutex that have already been initialized using that object. .SH SEE ALSO .ad l .nh .BR pthread_mutex_init (3), .BR pthread_mutexattr_getpshared (3), .BR pthread_mutexattr_getrobust (3), .BR pthreads (7)