summaryrefslogtreecommitdiffstats
path: root/man3/pthread_mutexattr_getpshared.3
diff options
context:
space:
mode:
Diffstat (limited to 'man3/pthread_mutexattr_getpshared.3')
-rw-r--r--man3/pthread_mutexattr_getpshared.382
1 files changed, 82 insertions, 0 deletions
diff --git a/man3/pthread_mutexattr_getpshared.3 b/man3/pthread_mutexattr_getpshared.3
new file mode 100644
index 0000000..b2abac1
--- /dev/null
+++ b/man3/pthread_mutexattr_getpshared.3
@@ -0,0 +1,82 @@
+.\" Copyright (c) 2017, Michael Kerrisk <mtk.manpages@gmail.com>
+.\"
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
+.\"
+.TH pthread_mutexattr_getpshared 3 2023-03-30 "Linux man-pages 6.05.01"
+.SH NAME
+pthread_mutexattr_getpshared, pthread_mutexattr_setpshared \- get/set
+process-shared mutex attribute
+.SH LIBRARY
+POSIX threads library
+.RI ( libpthread ", " \-lpthread )
+.SH SYNOPSIS
+.nf
+.B #include <pthread.h>
+.PP
+.B int pthread_mutexattr_getpshared(
+.BI " const pthread_mutexattr_t *restrict " attr ,
+.BI " int *restrict " pshared );
+.BI "int pthread_mutexattr_setpshared(pthread_mutexattr_t *" attr ,
+.BI " int " pshared );
+.fi
+.SH DESCRIPTION
+These functions get and set the process-shared attribute
+in a mutex attributes object.
+This attribute must be appropriately set to ensure correct,
+efficient operation of a mutex created using this attributes object.
+.PP
+The process-shared attribute can have one of the following values:
+.TP
+.B PTHREAD_PROCESS_PRIVATE
+Mutexes created with this attributes object are to be shared
+only among threads in the same process that initialized the mutex.
+This is the default value for the process-shared mutex attribute.
+.TP
+.B PTHREAD_PROCESS_SHARED
+Mutexes created with this attributes object can be shared between
+any threads that have access to the memory containing the object,
+including threads in different processes.
+.PP
+.BR pthread_mutexattr_getpshared ()
+places the value of the process-shared attribute of
+the mutex attributes object referred to by
+.I attr
+in the location pointed to by
+.IR pshared .
+.PP
+.BR pthread_mutexattr_setpshared ()
+sets the value of the process-shared attribute of
+the mutex attributes object referred to by
+.I attr
+to the value specified in
+.BR pshared .
+.PP
+If
+.I attr
+does not refer to an initialized mutex attributes object,
+the behavior is undefined.
+.SH RETURN VALUE
+On success, these functions return 0.
+On error, they return a positive error number.
+.SH ERRORS
+.BR pthread_mutexattr_setpshared ()
+can fail with the following errors:
+.TP
+.B EINVAL
+The value specified in
+.I pshared
+is invalid.
+.TP
+.B ENOTSUP
+.I pshared is
+.B PTHREAD_PROCESS_SHARED
+but the implementation does not support process-shared mutexes.
+.SH STANDARDS
+POSIX.1-2008.
+.SH HISTORY
+POSIX.1-2001.
+.SH SEE ALSO
+.ad l
+.nh
+.BR pthread_mutexattr_init (3),
+.BR pthreads (7)