PTHREAD_MUTEX_INIT(3)

NAME
pthread_mutex_init - create a mutex

LIBRARY
libpthread

SYNOPSIS
#include <pthread.h>
int
pthread_mutex_init(pthread_mutex_t * restrict mutex, const pthread_mutexattr_t * restrict attr);

DESCRIPTION
The pthread_mutex_init() function creates a new mutex, with attributes specified with attr. If attr is NULL the default attributes are used.

RETURN VALUES
If successful, pthread_mutex_init() will return zero and put the new mutex id into mutex, otherwise an error number will be returned to indicate the error.

ERRORS
pthread_mutex_init() shall fail if:

[EAGAIN]
    The system lacks the resources to initialize another mutex.

[ENOMEM]
    The process cannot allocate enough memory to initialize another mutex.

pthread_mutex_init() may fail if:

[EINVAL]
    The value specified by attr is invalid.

SEE ALSO
pthread_mutex_destroy(3), pthread_mutex_lock(3), pthread_mutex_trylock(3), pthread_mutex_unlock(3)

STANDARDS
pthread_mutex_init() conforms to p1003.1-96.