PTHREAD_MUTEXATTR_GETPSHARED(3P) - phpMan

PTHREAD_MUTEXATTR_GETPSHAREPOSIX Programmer's PTHREAD_MUTEXATTR_GETPSHARED(3P)
PROLOG
       This  manual  page is part of the POSIX Programmer's Manual.  The Linux
       implementation of this interface may differ (consult the  corresponding
       Linux  manual page for details of Linux behavior), or the interface may
       not be implemented on Linux.
NAME
       pthread_mutexattr_getpshared, pthread_mutexattr_setpshared --  get  and
       set the process-shared attribute
SYNOPSIS
       #include <pthread.h>
       int pthread_mutexattr_getpshared(const pthread_mutexattr_t
           *restrict attr, int *restrict pshared);
       int pthread_mutexattr_setpshared(pthread_mutexattr_t *attr,
           int pshared);
DESCRIPTION
       The  pthread_mutexattr_getpshared()  function shall obtain the value of
       the process-shared attribute from the attributes object  referenced  by
       attr.
       The  pthread_mutexattr_setpshared()  function  shall  set  the process-
       shared attribute in an  initialized  attributes  object  referenced  by
       attr.
       The process-shared attribute is set to PTHREAD_PROCESS_SHARED to permit
       a mutex to be operated upon by any thread that has access to the memory
       where  the mutex is allocated, even if the mutex is allocated in memory
       that is shared by multiple processes. If the  process-shared  attribute
       is  PTHREAD_PROCESS_PRIVATE,  the  mutex shall only be operated upon by
       threads created within the same process as the thread that  initialized
       the mutex; if threads of differing processes attempt to operate on such
       a mutex, the behavior is undefined. The default value of the  attribute
       shall be PTHREAD_PROCESS_PRIVATE.
       The  behavior  is undefined if the value specified by the attr argument
       to  pthread_mutexattr_getpshared()  or   pthread_mutexattr_setpshared()
       does not refer to an initialized mutex attributes object.
RETURN VALUE
       Upon successful completion, pthread_mutexattr_setpshared() shall return
       zero; otherwise, an error number shall  be  returned  to  indicate  the
       error.
       Upon successful completion, pthread_mutexattr_getpshared() shall return
       zero and store the value of the process-shared attribute of  attr  into
       the  object  referenced  by  the pshared parameter. Otherwise, an error
       number shall be returned to indicate the error.
ERRORS
       The pthread_mutexattr_setpshared() function may fail if:
       EINVAL The new value specified for the attribute is outside  the  range
              of legal values for that attribute.
       These functions shall not return an error code of [EINTR].
       The following sections are informative.
EXAMPLES
       None.
APPLICATION USAGE
       None.
RATIONALE
       If an implementation detects that the value specified by the attr argu-
       ment  to  pthread_mutexattr_getpshared()   or   pthread_mutexattr_setp-
       shared()  does  not refer to an initialized mutex attributes object, it
       is recommended that the function should fail  and  report  an  [EINVAL]
       error.
FUTURE DIRECTIONS
       None.
SEE ALSO
       pthread_cond_destroy(), pthread_create(), pthread_mutex_destroy(),
       pthread_mutexattr_destroy()
       The Base Definitions volume of POSIX.1-2008, <pthread.h>
COPYRIGHT
       Portions of this text are reprinted and reproduced in  electronic  form
       from IEEE Std 1003.1, 2013 Edition, Standard for Information Technology
       -- Portable Operating System Interface (POSIX),  The  Open  Group  Base
       Specifications Issue 7, Copyright (C) 2013 by the Institute of Electri-
       cal and Electronics Engineers,  Inc  and  The  Open  Group.   (This  is
       POSIX.1-2008  with  the  2013  Technical Corrigendum 1 applied.) In the
       event of any discrepancy between this version and the original IEEE and
       The  Open Group Standard, the original IEEE and The Open Group Standard
       is the referee document. The original Standard can be  obtained  online
       at http://www.unix.org/online.html .
       Any  typographical  or  formatting  errors that appear in this page are
       most likely to have been introduced during the conversion of the source
       files  to  man page format. To report such errors, see https://www.ker-
       nel.org/doc/man-pages/reporting_bugs.html .
IEEE/The Open Group                  2013     PTHREAD_MUTEXATTR_GETPSHARED(3P)