VMS Help
DCE_THREADS, Application Routines, pthread_cond_wait

 *Conan The Librarian (sorry for the slow response - running on an old VAX)

  NAME

      pthread_cond_wait - Causes a thread to wait for a condition variable
                          to be signaled or broadcast

  SYNOPSIS

      #include <pthread.h>

      int pthread_cond_wait( pthread_cond_t  *cond,
                             pthread_mutex_t *mutex );

  PARAMETERS

      cond                Condition variable waited on.

      mutex               Mutex associated with the condition variable
                          specified in cond.

  DESCRIPTION

  The pthread_cond_wait() routine causes a thread to wait for a condition
  variable to be signaled or broadcast. Each condition corresponds to one
  or more predicates based on shared data. The calling thread waits for
  the data to reach a particular state (for the predicate to become true).

  Call this routine after you have locked the mutex specified in mutex.
  The results of this routine are unpredictable if this routine is called
  without first locking the mutex.

  This routine automatically releases the mutex and causes the calling
  thread to wait on the condition. If the wait is satisfied as a result of
  some thread calling pthread_cond_signal() or pthread_cond_broadcast(),
  the mutex is reacquired and the routine returns.

  A thread that changes the state of storage protected by the mutex in
  such a way that a predicate associated with a condition variable might
  now be true must call either pthread_cond_signal() or
  pthread_cond_broadcast() for that condition variable. If neither call is
  made, any thread waiting on the condition variable continues to wait.

  This routine might (with low probability) return when the condition
  variable has not been signaled or broadcast. When a spurious wakeup
  occurs, the mutex is reacquired before the routine returns. (To handle
  this type of situation, enclose this routine in a loop that checks the
  predicate.)

  RETURN VALUES

  If the function fails, errno may be set to one of the following values:

    Return   Error       Description
    _________________________________________________________________
     0                   Successful completion.

    -1      [EINVAL]     The value specified by cond or mutex is invalid.

    -1      [EDEADLK]    A deadlock condition is detected.

  RELATED INFORMATION

      FUNCTIONS:  pthread_cond_broadcast
                  pthread_cond_destroy
                  pthread_cond_init
                  pthread_cond_signal
                  pthread_cond_timedwait
  Close     HLB-list     TLB-list     Help  

[legal] [privacy] [GNU] [policy] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.