pthread_barrierattr_getpshared(3p) - phpMan

PTHREAD_BARRIERATTR_GETPSHAPOSIXPProgrammer'PTHREAD_BARRIERATTR_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_barrierattr_getpshared, pthread_barrierattr_setpshared  --  get
       and set the process-shared attribute of the barrier attributes object
SYNOPSIS
       #include <pthread.h>
       int pthread_barrierattr_getpshared(const pthread_barrierattr_t
           *restrict attr, int *restrict pshared);
       int pthread_barrierattr_setpshared(pthread_barrierattr_t *attr,
           int pshared);
DESCRIPTION
       The pthread_barrierattr_getpshared() function shall obtain the value of
       the process-shared attribute from the attributes object  referenced  by
       attr.   The  pthread_barrierattr_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 barrier to be operated upon by any thread that has access to the mem-
       ory  where the barrier is allocated. If the process-shared attribute is
       PTHREAD_PROCESS_PRIVATE, the barrier shall only  be  operated  upon  by
       threads  created within the same process as the thread that initialized
       the barrier; if threads of different processes attempt  to  operate  on
       such  a  barrier,  the  behavior is undefined. The default value of the
       attribute   shall   be    PTHREAD_PROCESS_PRIVATE.    Both    constants
       PTHREAD_PROCESS_SHARED   and  PTHREAD_PROCESS_PRIVATE  are  defined  in
       <pthread.h>.
       Additional attributes, their default values, and the names of the asso-
       ciated  functions to get and set those attribute values are implementa-
       tion-defined.
       The behavior is undefined if the value specified by the  attr  argument
       to pthread_barrierattr_getpshared() or pthread_barrierattr_setpshared()
       does not refer to an initialized barrier attributes object.
RETURN VALUE
       If  successful,  the  pthread_barrierattr_getpshared()  function  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.
       If  successful,  the  pthread_barrierattr_setpshared()  function  shall
       return zero; otherwise, an error number shall be returned  to  indicate
       the error.
ERRORS
       The pthread_barrierattr_setpshared() function may fail if:
       EINVAL The  new value specified for the process-shared attribute is not
              one   of   the   legal    values    PTHREAD_PROCESS_SHARED    or
              PTHREAD_PROCESS_PRIVATE.
       These functions shall not return an error code of [EINTR].
       The following sections are informative.
EXAMPLES
       None.
APPLICATION USAGE
       The   pthread_barrierattr_getpshared()   and  pthread_barrierattr_setp-
       shared() functions are part of the Thread  Process-Shared  Synchroniza-
       tion option and need not be provided on all implementations.
RATIONALE
       If an implementation detects that the value specified by the attr argu-
       ment to pthread_barrierattr_getpshared()  or  pthread_barrierattr_setp-
       shared() does not refer to an initialized barrier attributes object, it
       is recommended that the function should fail  and  report  an  [EINVAL]
       error.
FUTURE DIRECTIONS
       None.
SEE ALSO
       pthread_barrier_destroy(), pthread_barrierattr_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_BARRIERATTR_GETPSHARED(3P)