 |
Index for Section 3 |
|
 |
Alphabetical listing for P |
|
 |
Bottom of page |
|
pthread_mutex_unlock(3)
NAME
pthread_mutex_unlock - Unlocks the specified mutex
SYNOPSIS
#include <pthread.h>
int pthread_mutex_unlock(
pthread_mutex_t *mutex );
LIBRARY
DECthreads POSIX 1003.1c Library (libpthread.so)
STANDARDS
Interfaces documented on this reference page conform to industry standards
as follows:
IEEE Std 1003.1c-1995, POSIX System Application Program Interface
PARAMETERS
mutex
Mutex to be unlocked.
DESCRIPTION
This routine unlocks the mutex specified by the mutex argument.
This routine behaves as follows, based on the type of the specified mutex:
· For a normal, default, or errorcheck mutex: if the mutex is owned by
the calling thread, it is unlocked with no current owner. Further, for
a normal or default mutex: if the mutex is not locked or is locked by
another thread, this routine can also return [EPERM], but this is not
guaranteed. For an errorcheck mutex: if the mutex is not locked or is
locked by another thread, this routine returns [EPERM].
· For a recursive mutex: if the mutex is owned by the calling thread,
the lock count is decremented. The mutex remains locked and owned
until the lock count reaches zero (0). When the lock count reaches
zero, the mutex becomes unlocked with no current owner.
If one or more threads are waiting to lock the specified mutex, and the
mutex becomes unlocked, this routine causes one thread to unblock and to
try to acquire the mutex. The scheduling policy is used to determine which
thread to unblock. For the SCHED_FIFO and SCHED_RR policies, a blocked
thread is chosen in priority order, using first-in/first-out within
priorities. Note that the mutex might not be acquired by the awakened
thread if any other running thread attempts to lock the mutex first.
On Tru64 UNIX, if a signal is delivered to a thread waiting for a mutex,
upon return from the signal handler, the thread resumes waiting for the
mutex as if it was not interrupted.
RETURN VALUES
If an error condition occurs, this routine returns an integer value
indicating the type of error. Possible return values are as follows:
0 Successful completion.
[EINVAL]
The value specified for mutex is invalid.
[EPERM]
The calling thread does not own the mutex.
ERRORS
None
SEE ALSO
Functions: pthread_mutexattr_settype(3), pthread_mutex_destroy(3),
pthread_mutex_init(3), pthread_mutex_lock(3), pthread_mutex_trylock(3)
Manuals: Guide to DECthreads and Programmer's Guide
 |
Index for Section 3 |
|
 |
Alphabetical listing for P |
|
 |
Top of page |
|