initialize a read/write lock
function is used to initialize a read/write lock, with attributes specified
by attr. If attr is NULL, the
default read/write lock attributes are used.
The results of calling
with an already initialized lock are undefined.
If successful, the
function will return zero. Otherwise an error number will be returned to
indicate the error.
pthread_rwlock_init() function will
- The system lacked the necessary resources (other than memory) to initialize the lock.
- Insufficient memory exists to initialize the lock.
- The caller does not have sufficient privilege to perform the operation.
pthread_rwlock_init() function may
- The system has detected an attempt to re-initialize the object referenced by lock, a previously initialized but not yet destroyed read/write lock.
- The value specified by attr is invalid.
pthread_rwlock_destroy(3), pthread_rwlockattr_init(3), pthread_rwlockattr_setpshared(3)
pthread_rwlock_init() function is
expected to conform to Version 2 of the Single UNIX
pthread_rwlock_init() function first
appeared in FreeBSD 3.0 and OpenBSD
The PTHREAD_PROCESS_SHARED attribute is not supported.