SYNOPSIS

DESCRIPTION

The
pthread_mutexattr_getpshared()
function obtains the value of the
process-shared
attribute from the attributes object referenced by
attr.
The
pthread_mutexattr_setpshared()
function is used to set the
process-shared
attribute in an initialised 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 will only be operated upon
by threads created within the same process as the thread
that initialised the mutex;
if threads of differing processes attempt to operate on such a mutex,
the behaviour is undefined.
The default value of the attribute is
PTHREAD_PROCESS_PRIVATE.

RETURN VALUE

Upon successful completion,
pthread_mutexattr_setpshared()
returns zero.
Otherwise, an error number is returned to indicate the error.

Upon successful completion,
pthread_mutexattr_getpshared()
returns zero and stores the value of the
process-shared
attribute of
attr
into the object referenced by the
pshared
parameter.
Otherwise, an error number is returned to indicate the error.

ERRORS

The
pthread_mutexattr_getpshared()
and
pthread_mutexattr_setpshared()
functions may fail if:

[EINVAL]

The value specified by
attr
is invalid.

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.