Manual Page Result
0
Command: pthread_mutex_lock | Section: 3 | Source: Digital UNIX | File: pthread_mutex_lock.3.gz
pthread_mutex_lock(3) Library Functions Manual pthread_mutex_lock(3)
NAME
pthread_mutex_lock - Locks an unlocked mutex, blocking if necessary.
LIBRARY
DECthreads POSIX 1003.1c Library (libpthread.so)
SYNOPSIS
#include <pthread.h>
int pthread_mutex_lock(
pthread_mutex_t *mutex);
STANDARDS
Interfaces documented on this reference page conform to industry stan-
dards as follows:
IEEE Std 1003.1c-1995, POSIX System Application Program Interface
PARAMETERS
Mutex to be locked.
DESCRIPTION
This routine locks a mutex with behavior that depends upon the type of
mutex, as follows: If a normal or default mutex is specified, a dead-
lock can result if the current owner of the mutex calls this routine in
an attempt to lock the mutex a second time. (The deadlock is not de-
tected or reported.) If a recursive mutex is specified, the current
owner of the mutex can relock the same mutex without blocking. The
lock count is incremented for each recursive lock within the thread.
If an errorcheck mutex is specified and the current owner tries to lock
the mutex a second time, this routine reports the [EDEADLK] error. If
the mutex is locked by another thread, the calling thread waits for the
mutex to become available.
Use the pthread_mutexattr_settype(3) routine to set the type of the mu-
tex to normal, default, recursive, or errorcheck. For more information
about types of mutexes, see the desciption of pthread_mutexattr_set-
type(3).
The thread that has locked a mutex becomes its current owner and re-
mains the owner until the same thread has unlocked it. This routine
returns with the mutex in the locked state and with the current thread
as the mutex's current owner.
A recursive or errorcheck mutex records the identity of the thread that
locks it, allowing debuggers to display this information. In most
cases, normal and default mutexes do not record the owning thread's
identity.
RETURN VALUES
If an error condition occurs, this routine returns an integer value in-
dicating the type of error. Possible return values are as follows:
Successful completion. The value specified for mutex is invalid, or
The mutex was created with the protocol attribute set to
PTHREAD_PRIO_PROTECT and the calling thread's priority set higher than
the mutex's current priority ceiling.) A deadlock condition is de-
tected.
ERRORS
None
RELATED INFORMATION
Functions: pthread_mutexattr_settype(3), pthread_mutex_destroy(3),
pthread_mutex_init(3), pthread_mutex_trylock(3), pthread_mutex_un-
lock(3)
Manuals: Guide to DECthreads and Programmer's Guide
delim off
pthread_mutex_lock(3)