_LWP_COND_SIGNAL(2) System Calls _LWP_COND_SIGNAL(2)


NAME


_lwp_cond_signal, _lwp_cond_broadcast - signal a condition variable

SYNOPSIS


#include <sys/lwp.h>

int _lwp_cond_signal(lwp_cond_t *cvp);


int _lwp_cond_broadcast(lwp_cond_t *cvp);


DESCRIPTION


The _lwp_cond_signal() function unblocks one LWP that is blocked on the
LWP condition variable pointed to by cvp.


The _lwp_cond_broadcast() function unblocks all LWPs that are blocked on
the LWP condition variable pointed to by cvp.


If no LWPs are blocked on the LWP condition variable, then
_lwp_cond_signal() and _lwp_cond_broadcast() have no effect.


Both functions should be called under the protection of the same LWP
mutex lock that is used with the LWP condition variable being signaled.
Otherwise, the condition variable may be signalled between the test of
the associated condition and blocking in _lwp_cond_wait(). This can cause
an infinite wait.

RETURN VALUES


Upon successful completion, 0 is returned. A non-zero value indicates an
error.

ERRORS


The _lwp_cond_signal() and _lwp_cond_broadcast() functions will fail if:

EINVAL
The cvp argument points to an invalid LWP condition variable.


EFAULT
The cvp argument points to an invalid address.


SEE ALSO


_lwp_cond_wait(2), _lwp_mutex_lock(2)


December 8, 1995 _LWP_COND_SIGNAL(2)