VMS Help
POSIX Threads, PTHREAD routines, pthread_cond_broadcast
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
Wakes all threads that are waiting on the specified condition
variable.
#include <pthread.h>
int
pthread_cond_broadcast (
pthread_cond_t *cond);
cond
Condition variable upon which the threads (to be awakened) are
waiting.
This routine unblocks all threads waiting on the specified
condition variable cond. Calling this routine implies that data
guarded by the associated mutex has changed, so that it might be
possible for one or more waiting threads to proceed. The threads
that are unblocked shall contend for the mutex according to their
respective scheduling policies (if applicable).
If only one of the threads waiting on a condition variable may be
able to proceed, but one of those threads can proceed, then use
pthread_cond_signal() instead.
Whether the associated mutex is locked or unlocked, you can still
call this routine. However, if predictable scheduling behavior is
required, that mutex should then be locked by the thread calling
the pthread_cond_broadcast() routine.
If no threads are waiting on the specified condition variable,
this routine takes no action. The broadcast does not propagate to
the next condition variable wait.
If an error condition occurs, this routine returns an integer
value indicating the type of error. Possible return values are as
follows:
Return Description
0 Successful completion.
[EINVAL] The value specified by cond is not a valid condition
variable.
pthread_cond_destroy()
pthread_cond_init()
pthread_cond_signal()
pthread_cond_timedwait()
pthread_cond_wait()
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.