PTHREAD_RWLOCKATTR_INIT(3C) Standard C Library Functions
pthread_rwlockattr_init, pthread_rwlockattr_destroy - initialize or
destroy read-write lock attributes object
cc -mt [ flag... ] file... -lpthread [ library... ]
#include <pthread.h>
int pthread_rwlockattr_init(pthread_rwlockattr_t *attr);
int pthread_rwlockattr_destroy(pthread_rwlockattr_t *attr);
The pthread_rwlockattr_init() function initializes a read-write lock
attributes object attr with the default value for all of the
attributes defined by the implementation.
Results are undefined if pthread_rwlockattr_init() is called
specifying an already initialized read-write lock attributes object.
After a read-write lock attributes object has been used to initialize
one or more read-write locks, any function affecting the attributes
object (including destruction) does not affect any previously
initialized read-write locks.
The pthread_rwlockattr_destroy() function destroys a read-write lock
attributes object. The effect of subsequent use of the object is
undefined until the object is re-initialized by another call to
pthread_rwlockattr_init(). An implementation can cause
pthread_rwlockattr_destroy() to set the object referenced by attr to
an invalid value.
If successful, the pthread_rwlockattr_init() and
pthread_rwlockattr_destroy() functions return 0. Otherwise, an error
number is returned to indicate the error.
The pthread_rwlockattr_init() function will fail if:
ENOMEM
Insufficient memory exists to initialize the read-write
lock attributes object.
The pthread_rwlockattr_destroy() function may fail if:
EINVAL
The value specified by attr 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_getpshared(3C), attributes(7), standards(7)
March 23, 2005 PTHREAD_RWLOCKATTR_INIT(3C)
NAME
pthread_rwlockattr_init, pthread_rwlockattr_destroy - initialize or
destroy read-write lock attributes object
SYNOPSIS
cc -mt [ flag... ] file... -lpthread [ library... ]
#include <pthread.h>
int pthread_rwlockattr_init(pthread_rwlockattr_t *attr);
int pthread_rwlockattr_destroy(pthread_rwlockattr_t *attr);
DESCRIPTION
The pthread_rwlockattr_init() function initializes a read-write lock
attributes object attr with the default value for all of the
attributes defined by the implementation.
Results are undefined if pthread_rwlockattr_init() is called
specifying an already initialized read-write lock attributes object.
After a read-write lock attributes object has been used to initialize
one or more read-write locks, any function affecting the attributes
object (including destruction) does not affect any previously
initialized read-write locks.
The pthread_rwlockattr_destroy() function destroys a read-write lock
attributes object. The effect of subsequent use of the object is
undefined until the object is re-initialized by another call to
pthread_rwlockattr_init(). An implementation can cause
pthread_rwlockattr_destroy() to set the object referenced by attr to
an invalid value.
RETURN VALUES
If successful, the pthread_rwlockattr_init() and
pthread_rwlockattr_destroy() functions return 0. Otherwise, an error
number is returned to indicate the error.
ERRORS
The pthread_rwlockattr_init() function will fail if:
ENOMEM
Insufficient memory exists to initialize the read-write
lock attributes object.
The pthread_rwlockattr_destroy() function may fail if:
EINVAL
The value specified by attr 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_getpshared(3C), attributes(7), standards(7)
March 23, 2005 PTHREAD_RWLOCKATTR_INIT(3C)