|
Threads Library Functions | pthread_rwlockattr_getpshared(3THR) |
| pthread_rwlockattr_getpshared, pthread_rwlockattr_setpshared - get or set process-shared attribute of read-write lock attributes object |
SYNOPSIS
|
cc -mt [ flag... ] file... -lpthread [ -lrt library... ]
#include <pthread.h> int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t *attr, int *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(5) for descriptions of the following
attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
MT-Level | MT-Safe |
|
| |