PTHREAD_MUTEX_INIT(3)     OpenBSD Programmer's Manual    PTHREAD_MUTEX_INIT(3)

NAME
     pthread_mutex_init - create a mutex

SYNOPSIS
     #include <pthread.h>

     int
     pthread_mutex_init(pthread_mutex_t *mutex,
             const pthread_mutexattr_t *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 mu-
     tex ID into mutex, otherwise an error number will be returned to indicate
     the error.

ERRORS
     pthread_mutex_init() will fail if:

     [EINVAL]      The value specified by attr is invalid.

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

     [EAGAIN]      The temporarily lacks the resources to create another mu-
                   tex.

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

STANDARDS
     pthread_mutex_init() conforms to ISO/IEC 9945-1 ANSI/IEEE (``POSIX'') Std
     1003.1 Second Edition 1996-07-12.

OpenBSD 2.6                      July 29, 1998                               1
