PTHREAD_MUTEX_LOCK(3)  FreeBSD Library Functions Manual  PTHREAD_MUTEX_LOCK(3)

NAME

     pthread_mutex_lock - lock a mutex

LIBRARY

     POSIX Threads Library (libpthread, -lpthread)

SYNOPSIS

     #include <pthread.h>

     int
     pthread_mutex_lock(pthread_mutex_t *mutex);

DESCRIPTION

     The pthread_mutex_lock() function locks mutex.  If the mutex is already
     locked, the calling thread will block until the mutex becomes available.

RETURN VALUES

     If successful, pthread_mutex_lock() will return zero, otherwise an error
     number will be returned to indicate the error.

ERRORS

     The pthread_mutex_lock() function will fail if:

     [EINVAL]            The value specified by mutex is invalid.

     [EDEADLK]           A deadlock would occur if the thread blocked waiting
                         for mutex.

     [EOWNERDEAD]        The argument mutex points to a robust mutex and the
                         process containing the previous owning thread
                         terminated while holding the mutex lock.  The lock
                         was granted to the caller and it is up to the new
                         owner to make the state consistent.

     [ENOTRECOVERABLE]   The state protected by the mutex is not recoverable.

SEE ALSO

     pthread_mutex_consistent(3), pthread_mutex_destroy(3),
     pthread_mutex_init(3), pthread_mutex_trylock(3), pthread_mutex_unlock(3)

STANDARDS

     The pthread_mutex_lock() function conforms to ISO/IEC 9945-1:1996
     ("POSIX.1").

FreeBSD 15.1-STABLE-HBSD        August 7, 2019           PTHREAD_MUTEX_LOCK(3)