Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pthread_mutex_lock(3thr) — Ultrix/UWS 4.5.1 RISC

Media Vault

Software Library

Restoration Projects

Artifacts Sought

pthread_mutex_lock(3thr)

Name

pthread_mutex_lock − Locks an unlocked mutex.  If the mutex is locked, this routine causes the thread to wait for the mutex to become available

Syntax

#include <pthread.h>

int pthread_mutex_lock (mutex)
pthread_mutex_t *mutex;

Arguments

mutex Mutex locked. 

Description

This routine locks a mutex. If the mutex is locked when a thread calls this routine, the thread waits for the mutex to become available. 

The thread that has locked a mutex becomes its current owner and remains 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. 

If you specified a fast mutex in a call to pthread_mutexattr_setkind_np, a deadlock can result if the current owner of a mutex calls this routine in an attempt to lock the mutex a second time. If you specified a recursive mutex in a call to pthread_mutexattr_setkind_np, the current owner of a mutex can relock the same mutex without blocking. 

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. 
-1 [EDEADLK] A deadlock condition is detected. 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026