[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]
Base Operating System and Extensions Technical Reference, Volume 1

pthread_rwlockattr_init or pthread_rwlockattr_destroy Subroutines

Purpose

Initialises and destroys read-write lock attributes object.

Library

Threads Library (libpthreads.a)

Syntax

#include <pthread.h>
int pthread_rwlockattr_init (pthread_rwlockattr_t *attr);
int pthread_rwlockattr_destroy (pthread_rwlockattr_t *attr);

Description

The function pthread_rwlockattr_init initialises 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 initialised read-write lock attributes object.

After a read-write lock attributes object has been used to initialise one or more read-write locks, any function affecting the attributes object (including destruction) does not affect any previously initialised 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-initialised by another call to pthread_rwlockattr_init. An implementation may cause pthread_rwlockattr_destroy to set the object referenced by attr to an invalid value.

Return Value

If successful, the pthread_rwlockattr_init and pthread_rwlockattr_destroy functions return zero. Otherwise, an error number is returned to indicate the error.

Error Codes

The pthread_rwlockattr_init function will fail if:

ENOMEM Insufficient memory exists to initialise the read-write lock attributes object.

The pthread_rwlockattr_destroy function will fail if:

EINVAL The value specified by attr is invalid.

Implementation Specifics

Similar functions are being developed by IEEE PASC. In keeping with its objective of ensuring that CAE Specifications are fully aligned with formal standards, The Open Group intends to add any new interfaces adopted by an official IEEE standard in this area.

Related Information

The pthread.h file.

The pthread_rwlock_init, pthread_rwlock_unlock, pthread_rwlock_wrlock, pthread_rwlock_rdlock, and pthread_rwlockattr_getpshared subroutines.


[ Next Article | Previous Article | Book Contents | Library Home | Legal | Search ]