VMS Help  —  POSIX Threads, PTHREAD routines, pthread_cond_init, Description
    This routine initializes the condition variable cond with
    attributes specified in the attr argument. If attr is NULL, the
    default condition variable attributes are used.

    A condition variable is a synchronization object used in
    conjunction with a mutex. A mutex controls access to data that
    is shared among threads; a condition variable allows threads to
    wait for that data to enter a defined state.

    Condition variables are not owned by a particular thread. Any
    associated storage is not automatically deallocated when the
    creating thread terminates.

    Use the macro PTHREAD_COND_INITIALIZER to initialize statically
    allocated condition variables to the default condition variable
    attributes. To invoke this macro, enter:

       pthread_cond_t condition = PTHREAD_COND_INITIALIZER

    When statically initialized, a condition variable should not also
    be initialized using pthread_cond_init(). Also, a statically
    initialized condition variable need not be destroyed using
    pthread_cond_destroy().

    Under certain circumstances it might be impossible to wait upon
    a statically initialized condition variable when the process
    virtual address space (or some other memory limit) is nearly
    exhausted. In such a case pthread_cond_wait() or pthread_cond_
    timedwait() can return [ENOMEM]. To avoid this possibility,
    initialize critical condition variables using pthread_cond_
    init().
Close Help