pthread_rwlockattr_getpshared.3t (2010 09)
p
pthread_rwlockattr_getpshared(3T) pthread_rwlockattr_getpshared(3T)
(Pthread Library)
NAME
pthread_rwlockattr_getpshared(), pthread_rwlockattr_setpshared() - get or set the process-shared attri-
bute
SYNOPSIS
#include <pthread.h>
int pthread_rwlockattr_setpshared(pthread_rwlockattr_t *attr,
int pshared);
int pthread_rwlockattr_getpshared(const pthread_rwlockattr_t
*__restrict attr, int *__restrict pshared);
PARAMETERS
attr Pointer to the read-write lock attributes object whose attributes are to be set/retrieved.
pshared This parameter either specifies the new value of the process-shared attribute (set func-
tion) or points to the memory location where the process-shared attribute of attr is to be
returned (get function).
DESCRIPTION
The attributes object attr must have been previously initialized with the function
pthread_rwlockattr_init()
before these functions are called.
Read-Write locks can be used only by threads within the process or shared by threads in multiple
processes. The process-shared attribute in a read-write lock attributes object describes who may use the
read-write lock. The legal values for the process-shared attribute are:
PTHREAD_PROCESS_SHARED
This option permits a read-write lock to be operated upon by any thread that has access to the
memory where the read-write lock is allocated. The application is responsible for allocating
the read-write lock in memory that multiple processes can access.
PTHREAD_PROCESS_PRIVATE
The read-write lock can only be operated upon by threads created within the same process as
the thread that initialized the read-write lock. If threads of differing processes attempt to
operate on such read-write lock, the behavior is undefined.
The default value of process-shared is
PTHREAD_PROCESS_PRIVATE.
pthread_rwlockattr_setpshared()
is used to set the process-shared attribute in the initialized
attributes object attr . The new value of the process-shared attribute of attr is set to the value specified in
the pshared parameter.
pthread_rwlockattr_getpshared()
retrieves the value of the process-shared attribute from the
read-write lock attributes object attr . The value of the process-shared attribute of attr is returned in the
pshared parameter.
RETURN VALUE
Upon successful completion,
pthread_rwlockattr_getpshared()
and
pthread_rwlockattr_setpshared() return zero. Otherwise, an error number is returned to indi-
cate the error (the
errno variable is not set).
ERRORS
If any of the following occur, the
pthread_rwlockattr_getpshared()
and
pthread_rwlockattr_setpshared() functions return the corresponding error number:
[ENOSYS]
_POSIX_THREAD_PROCESS_SHARED is not defined and these functions are not
supported.
For each of the following conditions, if the condition is detected, the
pthread_rwlockattr_getpshared() and pthread_rwlockattr_setpshared() functions
return the corresponding error number:
[EINVAL] The value specified by attr is invalid.
[EINVAL] The value specified by pshared is not a legal value.
[EINVAL] The value pshared points to an illegal address.
HP-UX 11i Version 3: September 2010 − 1 − Hewlett-Packard Company 1