Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX Reference > P

pthread_rwlock_unlock(3T)

Pthread Library
HP-UX 11i Version 3: February 2007
» 

Technical documentation

» Feedback
Content starts here

 » Table of Contents

 » Index

NAME

pthread_rwlock_unlock() — unlock a read-write lock.

SYNOPSIS

#include <pthread.h>

int pthread_rwlock_unlock( pthread_rwlock_t *rwlock );

PARAMETERS

rwlock

Pointer to the read-write lock to be unlocked.

DESCRIPTION

The function pthread_rwlock_unlock() is called by the owner to release the read-write lock referenced by rwlock. Results are undefined if the read-write lock rwlock is not held by the calling thread.

If this function is called to release a read lock on the read-write lock rwlock and there are other read locks currently held on this read-write lock, the read-write lock shall remain in the read locked state but without the current thread as one of its owners. If this function releases the last read lock for this read-write lock, the object shall be put in the unlocked state with no owners.

If this function is called to release a write lock on the read-write lock rwlock, the read-write lock shall be put in the unlocked state with no owners.

If the call to the pthread_rwlock_unlock() function results in the read-write lock becoming unlocked and there are threads waiting to acquire the read-write lock for writing, the scheduling policy is used to determine which thread shall acquire the read-write lock for writing. If there are threads waiting to acquire the read-write lock object for reading, the scheduling policy is used to determine the order in which the waiting threads shall acquire the read-write lock object for reading. If there are multiple threads blocked on rwlock for both read locks and write locks, it is unspecified whether the readers will acquire the lock first or whether a writer will acquire the lock first.

Results are undefined if this function is called with an uninitialized read-write lock.

RETURN VALUE

Upon successful completion, pthread_rwlock_unlock() returns zero. Otherwise, an error number is returned to indicate the error (the errno variable is not set).

ERRORS

For each of the following conditions, if the condition is detected, the pthread_rwlock_unlock() function returns the corresponding error number:

[EINVAL]

The value specified by rwlock does not refer to an initialized read-write lock object.

[EPERM]

The current thread does not own the read-write lock.

AUTHOR

pthread_rwlock_unlock() was developed by X/Open.

SEE ALSO

pthread_rwlock_init(3T), pthread_rwlock_destroy(3T), pthread_rwlock_rdlock(3T), pthread_rwlock_wrlock(3T), pthread_rwlock_tryrdlock(3T), pthread_rwlock_trywrlock(3T).

STANDARDS CONFORMANCE

pthread_rwlock_unlock(): X/Open.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2007 Hewlett-Packard Development Company, L.P.