Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pthread_cond_broadcast(3) [osx man page]

PTHREAD_COND_BROADCAST(3)				   BSD Library Functions Manual 				 PTHREAD_COND_BROADCAST(3)

NAME
pthread_cond_broadcast -- unblock all threads waiting for a condition variable SYNOPSIS
#include <pthread.h> int pthread_cond_broadcast(pthread_cond_t *cond); DESCRIPTION
The pthread_cond_broadcast() function unblocks all threads that are waiting for the condition variable cond. RETURN VALUES
If successful, the pthread_cond_broadcast() function will return zero. Otherwise, an error number will be returned to indicate the error. ERRORS
pthread_cond_broadcast() will fail if: [EINVAL] The value specified by cond is invalid. SEE ALSO
pthread_cond_destroy(3), pthread_cond_init(3), pthread_cond_signal(3), pthread_cond_timedwait(3), pthread_cond_wait(3) STANDARDS
pthread_cond_broadcast() conforms to ISO/IEC 9945-1:1996 (``POSIX.1''). BSD
July 28, 1998 BSD

Check Out this Related Man Page

pthread_cond_signal(3C) 												   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); 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 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. If successful, the pthread_cond_signal() and pthread_cond_broadcast() functions return 0. Otherwise, an error number is returned to indi- cate the error. The pthread_cond_signal() and pthread_cond_broadcast() function may fail if: EINVAL The value cond does not refer to an initialized condition variable. See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ pthread_cond_init(3C), pthread_cond_wait(3C), pthread_cond_timedwait(3C), attributes(5), condition(5), standards(5) 23 Mar 2005 pthread_cond_signal(3C)
Man Page

7 More Discussions You Might Find Interesting

1. AIX

pthread lock question

Is it possible that the function "pthread_cond_broadcast" block itself and the function "pthread_cond_wait" unblock in multi-threads programming ? The operating system is AIX 5.2, its maintenance level is : 5.2.0.4, VisualAge C++ 6.0. Thanks (0 Replies)
Discussion started by: Frank2004
0 Replies

2. Programming

using pthread_mutex_destroy()

As part of a multi-threaded code that I am designing, I am using mutexes to control access to a shared data segments in the code. I have no problems initalising and manipulating the mutexes to control access, however terminating the mutex itself is proving to be a bit difficult. I am... (3 Replies)
Discussion started by: JamesGoh
3 Replies

3. Programming

Thread prog (core dump)

Could any one please suggest me how to solve this...... when I compiled the program and tried to execute it as follows, it works fine under different inputs like: ./main -r 300 -w 3 -s 100 ./main -r 600 -w 3 -s 1000 ./main -r 10 -w 3 -s 100 But it fails when I tired to give the input as... (1 Reply)
Discussion started by: kumars
1 Replies

4. Programming

threads and signals

can any one give me an example of a concurrency program in threads and signals, i.e how to deliver messages between threads using signals. thanks (2 Replies)
Discussion started by: moe_7
2 Replies

5. Programming

Posix Semaphore Use - Releasing all resources?

I am attempting to write a program with multiple POSIX threads. I want to ensure all threads are released at the same time. I am (trying to) use a semaphore to accomplish this. Without too much irrelevant information, I declare my semaphore with 0 of 25 resources available. Is there a way... (7 Replies)
Discussion started by: snowbarr
7 Replies

6. Programming

problem with threads in C

I have problem that if I create for example 100 threads program work correctly but if I define more threads for example 1000 // if I change static int NUM_E from 100 to 1000 than program stop about 350 threads and doesn't continue where should be problem please? #include <pthread.h>... (4 Replies)
Discussion started by: Sevco777
4 Replies

7. Programming

Question (pthread): How to Signal all threads w/o "broadcast"?

Hello all, Is there any way that I can signal (wake) all threads that I have created without using pthread_cond_broadcast? Cheers! Aaron (6 Replies)
Discussion started by: mobility
6 Replies