| Click this button to go to the index for this section. |
tis_mutex_init(3)
NAME
tis_mutex_init - Initializes a mutex object.LIBRARY
Standard C Library (libc.so, libc.a)SYNOPSIS
#include <tis.h> int tis_mutex_init( pthread_mutex_t *mutex);STANDARDS
NonePARAMETERS
mutex Pointer to a mutex object (passed by reference) to be initialized.DESCRIPTION
This routine initializes a mutex object with the DECthreads default mutex attributes. A mutex is a synchronization object that allows multiple threads to serialize their access to shared data. The mutex object is initialized and set to the unlocked state. Mutexes can be allocated in heap or static memory, but not on a stack. Your program can use the PTHREAD_MUTEX_INITIALIZER macro to statically initialize a mutex object without calling this routine. Statically initialized mutexes need not be destroyed using tis_mutex_destroy(3). Use this macro as follows: pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZERRETURN VALUES
If an error condition occurs, this routine returns an integer value indicating the type of error, the mutex is not initialized, and the contents of mutex are undefined. Possible return values are as follows: 0 Successful completion. [EAGAIN] The system lacks the necessary resources to initialize a mutex. [ENOMEM] Insufficient memory exists to initialize the mutex. [EBUSY] The implementation has detected an attempt to reinitialize mutex (a previously initialized, but not yet destroyed mutex). [EINVAL] The value specified by mutex is invalid. [EPERM] The caller does not have privileges to perform this operation.ERRORS
NoneRELATED INFORMATION
Functions: tis_mutex_destroy(3), tis_mutex_lock(3), tis_mutex_trylock(3), tis_mutex_unlock(3) Manuals: Guide to DECthreads and Programmer's Guide