*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> pthread_mutex_lock (3)              



NAME    [Toc]    [Back]

       pthread_mutex_lock - Locks an unlocked mutex

SYNOPSIS    [Toc]    [Back]

       #include <pthread.h>

       int pthread_mutex_lock(
               pthread_mutex_t *mutex );

LIBRARY    [Toc]    [Back]

       DECthreads POSIX 1003.1c Library (libpthread.so)

STANDARDS    [Toc]    [Back]

       Interfaces  documented  on  this reference page conform to
       industry standards as follows:

       IEEE Std 1003.1c-1995, POSIX  System  Application  Program

PARAMETERS    [Toc]    [Back]

       Mutex to be locked.

DESCRIPTION    [Toc]    [Back]

       This routine locks a mutex with behavior that depends upon
       the type of mutex, as follows:  If  a  normal  or  default
       mutex  is  specified, a deadlock can result if the current
       owner of the mutex calls this routine  in  an  attempt  to
       lock  the  mutex  a  second  time.  (The  deadlock  is not
       detected or reported.)  If a recursive mutex is specified,
       the  current  owner of the mutex can relock the same mutex
       without blocking. The lock count is incremented  for  each
       recursive  lock within the thread.  If an errorcheck mutex
       is specified and the current owner tries to lock the mutex
       a  second  time, this routine reports the [EDEADLK] error.
       If the mutex is locked  by  another  thread,  the  calling
       thread waits for the mutex to become available.

       Use  the  pthread_mutexattr_settype(3)  routine to set the
       type of  the  mutex  to  normal,  default,  recursive,  or
       errorcheck.  For  more information about types of mutexes,
       see the description of pthread_mutexattr_settype(3).

       The thread that has locked a  mutex  becomes  its  current
       owner  and  remains  its  owner  until the same thread has
       unlocked it. This routine returns with the  mutex  in  the
       locked  state  and  with the current thread as the mutex's
       current owner.

       A recursive or errorcheck mutex records  the  identity  of
       the  thread  that  locks it, allowing debuggers to display
       this  information.  In  most  cases,  normal  and  default
       mutexes do not record the owning thread's identity.

RETURN VALUES    [Toc]    [Back]

       If  an  error  condition  occurs,  this routine returns an
       integer value  indicating  the  type  of  error.  Possible
       return  values  are  as follows: Successful completion.  A
       deadlock condition is detected.  The  value  specified  by
       mutex is not a valid mutex.

ERRORS    [Toc]    [Back]


SEE ALSO    [Toc]    [Back]

       Functions:                   pthread_mutexattr_settype(3),
       pthread_mutex_destroy(3),           pthread_mutex_init(3),
       pthread_mutex_trylock(3), pthread_mutex_unlock(3)

       Manuals: Guide to DECthreads and Programmer's Guide

[ Back ]
 Similar pages
Name OS Title
pthread_lock_global_np Tru64 Locks the DECthreads global mutex
tis_lock_global Tru64 Locks the DECthreads global mutex
pthread_mutexattr_gettype Tru64 Obtains the mutex type attribute in the specified mutex attributes object
pthread_mutexattr_settype Tru64 Specifies the mutex type attribute that is used when a mutex is created
BUF_TIMELOCK FreeBSD locks a buffer
BUF_LOCK FreeBSD locks a buffer
dxpause Tru64 locks (pauses) an X display
BUF_LOCK Tru64 General: Locks the specified I/O buffer
pthread_mutex_lock IRIX mutual exclusion locks
omp_lock IRIX Set of procedures to manipulate locks
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service