Standard C Library Functions pthread_cond_signal(3C)
NAME
pthread_cond_signal, pthread_cond_broadcast - signal or
broadcast a conditionSYNOPSIS
cc -mt [ flag... ] file... -lpthread [ library... ]
#include
int pthread_cond_signal(pthread_cond_t *cond);
int pthread_cond_broadcast(pthread_cond_t *cond);
DESCRIPTION
These two functions are used to unblock threads blocked on a condition variable.The pthread_cond_signal() call unblocks at least one of the
threads that are blocked on the specified condition variable cond (if any threads are blocked on cond).The pthread_cond_broadcast() call unblocks all threads
currently blocked on the specified condition variable cond. If more than one thread is blocked on a condition variable, the scheduling policy determines the order in which threads are unblocked. When each thread unblocked as a result of apthread_cond_signal() or pthread_cond_broadcast() returns
from its call to pthread_cond_wait() or
pthread_cond_timedwait(), the thread owns the mutex with
which it called pthread_cond_wait() or
pthread_cond_timedwait(). The thread(s) that are unblocked
contend for the mutex according to the scheduling policy (ifapplicable), and as if each had called pthread_mutex_lock().
The pthread_cond_signal() or pthread_cond_broadcast() func-
tions may be called by a thread whether or not it currentlyowns the mutex that threads calling pthread_cond_wait() or
pthread_cond_timedwait() have associated with the condition
variable during their waits; however, if predictable scheduling behavior is required, then that mutex is lockedby the thread calling pthread_cond_signal() or
pthread_cond_broadcast().
The pthread_cond_signal() and pthread_cond_broadcast() func-
tions have no effect if there are no threads currentlySunOS 5.11 Last change: 23 Mar 2005 1
Standard C Library Functions pthread_cond_signal(3C)
blocked on cond.RETURN VALUES
If successful, the pthread_cond_signal() and
pthread_cond_broadcast() functions return 0. Otherwise, an
error number is returned to indicate the error.ERRORS
The pthread_cond_signal() and pthread_cond_broadcast()
function may fail if: EINVAL The value cond does not refer to an initialized condition variable.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | MT-Safe |
|_____________________________|_____________________________|
| Standard | See standards(5). ||_____________________________|_____________________________|
SEE ALSO
pthread_cond_init(3C), pthread_cond_wait(3C),
pthread_cond_timedwait(3C), attributes(5), condition(5),
standards(5)SunOS 5.11 Last change: 23 Mar 2005 2