PTHREAD_RWLOCKATTR_GETPSHARED(3C) Standard C Library Functions
pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared - get or
set process-shared attribute of read-write lock attributes object
cc -mt [ flag... ] file... -lpthread [ library... ]
#include <pthread.h>
int pthread_rwlockattr_getpshared(
const pthread_rwlockattr_t *restrict attr,
int *restrict pshared);
int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *attr,
int pshared);
The process-shared attribute is set to PTHREAD_PROCESS_SHARED to
permit a read-write lock to be operated upon by any thread that has
access to the memory where the read-write lock is allocated, even if
the read-write lock is allocated in memory that is shared by multiple
processes. If the process-shared attribute is
PTHREAD_PROCESS_PRIVATE, the read-write lock will only be operated
upon by threads created within the same process as the thread that
initialised the read-write lock; if threads of differing processes
attempt to operate on such a read-write lock, the behaviour is
undefined. The default value of the process-shared attribute is
PTHREAD_PROCESS_PRIVATE.
The pthread_rwlockattr_getpshared() function obtains the value of the
process-shared attribute from the initialised attributes object
referenced by attr. The pthread_rwlockattr_setpshared() function is
used to set the process-shared attribute in an initialised attributes
object referenced by attr.
If successful, the pthread_rwlockattr_setpshared() function returns
0. Otherwise, an error number is returned to indicate the error.
Upon successful completion, the pthread_rwlockattr_getpshared()
returns 0 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.
The pthread_rwlockattr_getpshared() and
pthread_rwlockattr_setpshared() functions will fail if:
EINVAL
The value specified by attr or pshared is invalid.
See attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+
pthread_rwlock_init(3C), pthread_rwlock_rdlock(3C),
pthread_rwlock_unlock(3C), pthread_rwlock_wrlock(3C),
pthread_rwlockattr_init(3C), attributes(7), standards(7)
March 23, 2005
PTHREAD_RWLOCKATTR_GETPSHARED(3C)
NAME
pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared - get or
set process-shared attribute of read-write lock attributes object
SYNOPSIS
cc -mt [ flag... ] file... -lpthread [ library... ]
#include <pthread.h>
int pthread_rwlockattr_getpshared(
const pthread_rwlockattr_t *restrict attr,
int *restrict pshared);
int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *attr,
int pshared);
DESCRIPTION
The process-shared attribute is set to PTHREAD_PROCESS_SHARED to
permit a read-write lock to be operated upon by any thread that has
access to the memory where the read-write lock is allocated, even if
the read-write lock is allocated in memory that is shared by multiple
processes. If the process-shared attribute is
PTHREAD_PROCESS_PRIVATE, the read-write lock will only be operated
upon by threads created within the same process as the thread that
initialised the read-write lock; if threads of differing processes
attempt to operate on such a read-write lock, the behaviour is
undefined. The default value of the process-shared attribute is
PTHREAD_PROCESS_PRIVATE.
The pthread_rwlockattr_getpshared() function obtains the value of the
process-shared attribute from the initialised attributes object
referenced by attr. The pthread_rwlockattr_setpshared() function is
used to set the process-shared attribute in an initialised attributes
object referenced by attr.
RETURN VALUES
If successful, the pthread_rwlockattr_setpshared() function returns
0. Otherwise, an error number is returned to indicate the error.
Upon successful completion, the pthread_rwlockattr_getpshared()
returns 0 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_rwlockattr_getpshared() and
pthread_rwlockattr_setpshared() functions will fail if:
EINVAL
The value specified by attr or pshared is invalid.
ATTRIBUTES
See attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+
SEE ALSO
pthread_rwlock_init(3C), pthread_rwlock_rdlock(3C),
pthread_rwlock_unlock(3C), pthread_rwlock_wrlock(3C),
pthread_rwlockattr_init(3C), attributes(7), standards(7)
March 23, 2005
PTHREAD_RWLOCKATTR_GETPSHARED(3C)