pthread_cond_broadcast()

Updated: April 19, 2023

Unblock threads waiting on a condition

Synopsis:

#include <pthread.h>

int pthread_cond_broadcast( pthread_cond_t* cond );

Arguments:

cond
A pointer to the pthread_cond_t object for which you want to unblock the threads.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The pthread_cond_broadcast() function unblocks all threads currently blocked on the condition variable cond. Usually, the threads unblock in priority order. Exceptions occur when an unpredictable event, such as an interrupt, occurs after the moment a thread unblocks but before it acquires the mutex. This event delays the thread, which allows a thread of lower prioity to unblock and acquire the mutex first.

If more than one thread at a particular priority is blocked, those threads are unblocked in FIFO order.

Returns:

EOK
Success.
EFAULT
A fault occurred trying to access the buffers provided.
EINVAL
Invalid condition variable cond.

Classification:

POSIX 1003.1

Safety:  
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes