[Return to Bookshelf] [Contents] [Previous Section] [Next Section] [Index] [Help]


pthread_cond_signal_int_np

Wakes one thread that is waiting on a condition variable. This routine can only be called from interrupt level.

Syntax

pthread_cond_signal_int_np(
                           cond );
 


Argument Data Type Access

cond opaque pthread_cond_t read


C Binding

int
pthread_cond_signal_int_np(
pthread_cond_t *cond);

Arguments

cond
Condition variable signaled.

Description

This routine wakes one thread waiting on a condition variable. It can only be called from a software interrupt handler routine. Calling this routine implies that it might be possible for a single waiting thread to proceed. Call this routine when any thread waiting on the specified condition variable might find its predicate true.

The scheduling policies of the waiting threads determine which thread is awakened. For policies SCHED_FIFO and SCHED_RR, a blocked thread is chosen in priority order, using first-in/first-out (FIFO) within priorities.

This routine does not cause a thread blocked on a condition variable to resume execution immediately. A thread resumes execution at some time after the interrupt handler returns.

You can call this routine regardless of whether the associated mutex is locked. Never try to lock a mutex from an interrupt handler.


Note
This routine allows you to signal a thread from a software interrupt handler. Do not call this routine from noninterrupt code. If you want to signal a thread from the normal noninterrupt level, use pthread_cond_signal.

Return Values

If an error condition occurs, this routine returns -1 and sets errno to the corresponding error value. Possible return values are as follows:
Return  Error         Description

0 Successful completion. -1 [EINVAL] The value specified by cond is invalid.



[Return to Bookshelf] [Contents] [Previous Section] [Next Section] [Index] [Help]