pthread_cond_signal(3C) Standard C Library Functions pthread_cond_signal(3C)NAME
pthread_cond_signal, pthread_cond_broadcast - signal or broadcast a
condition
SYNOPSIS
cc -mt [ flag... ] file... -lpthread [ library... ]
#include <pthread.h>
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 sched‐
uling policy determines the order in which threads are unblocked. When
each thread unblocked as a result of a pthread_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 (if applicable), and as if each had called pthread_mutex_lock().
The pthread_cond_signal() or pthread_cond_broadcast() functions may be
called by a thread whether or not it currently owns 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 locked
by the thread calling pthread_cond_signal() or pthread_cond_broad‐
cast().
The pthread_cond_signal() and pthread_cond_broadcast() functions have
no effect if there are no threads currently 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 condi‐
tion variable.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
┌─────────────────────────────┬─────────────────────────────┐
│ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
├─────────────────────────────┼─────────────────────────────┤
│Interface Stability │Standard │
├─────────────────────────────┼─────────────────────────────┤
│MT-Level │MT-Safe │
└─────────────────────────────┴─────────────────────────────┘
SEE ALSOpthread_cond_init(3C), pthread_cond_wait(3C), pthread_cond_timed‐
wait(3C), attributes(5), condition(5), standards(5)SunOS 5.10 23 Mar 2005 pthread_cond_signal(3C)