pthread_mutex_unlock(3) — Subroutines
Digital
NAME
pthread_mutex_unlock − Unlocks a mutex.
SYNOPSIS
#include <pthread.h>
int pthread_mutex_unlock(
phread_mutex_t ∗mutex );
PARAMETERS
mutexMutex unlocked.
DESCRIPTION
This routine unlocks a mutex. If no threads are waiting for the mutex, the mutex unlocks with no current owner. If one or more threads are waiting to lock the specified mutex, this routine causes one thread to return from its call to pthread_mutex_lock. The scheduling policy is used to determine which thread acquires the mutex. For the SCHED_FIFO, SCHED_RR, and SCHED_OTHER policies, a blocked thread is chosen in priority order, using SCHED_FIFO within priorities.
The results of calling this routine are unpredictable if the mutex specified in mutex is unlocked. The results of calling this routine are also unpredictable if the mutex specified in mutex is currently owned by a thread other than the calling thread.
RETURN VALUES
If an error condition occurs, this routine returns −1 and sets errno to the corresponding error value. Possible return values are as follows:
| Return | Error | Description |
| 0 | Successful completion. | |
| −1 | [EINVAL] | The value specified by mutex is invalid. |
RELATED INFORMATION
pthread_mutexattr_setkind_np(3), pthread_mutex_destroy(3), pthread_mutex_init(3), pthread_mutex_lock(3), pthread_mutex_trylock(3), pthread_unlock_global_np(3)