Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

pthread_mutexattr_setkind_np(3)

pthread_mutex_destroy(3)

pthread_mutex_init(3)

pthread_mutex_lock(3)

pthread_mutex_unlock(3)

pthread_mutex_trylock(3)  —  Subroutines

Digital

NAME

pthread_mutex_trylock − Locks a mutex. If the mutex is locked, the calling thread does not wait for the mutex to become available. 

SYNOPSIS

#include <pthread.h>
int pthread_mutex_trylock(

pthread_mutex_t ∗mutex );

PARAMETERS

mutexMutex locked. 

DESCRIPTION

This routine locks a mutex. If the specified mutex is locked when a thread calls this routine, the calling thread does not wait for the mutex to become available. 

When a thread calls this routine, an attempt is made to immediately lock the mutex. If the mutex is successfully locked, 1 is returned and the current thread is then the mutex’s current owner. 

If the mutex is locked by another thread when this routine is called, 0 is returned and the thread does not wait to acquire the lock.  If a fast mutex is owned by the current thread, 0 is returned. If a recursive mutex is owned by the current thread, 1 is returned and the mutex is relocked. (To unlock a recursive mutex, each call to pthread_mutex_trylock must be matched by a call to pthread_mutex_unlock.) 

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
1 Successful completion.
 0 The mutex is locked; therefore, it was not acquired. 
−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_unlock(3)

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