VMS Help
POSIX Threads, PTHREAD routines, sched_yield
*Conan The Librarian
|
Yields execution to another thread.
Syntax
sched_yield();
#include <sched.h>
#include <unistd.h>
int
sched_yield (void);
None
In conformance with the IEEE POSIX.1-1996 standard, the sched_
yield() function causes the calling thread to yield execution
to another thread. It is useful when a thread running under the
SCHED_FIFO scheduling policy must allow another thread at the
same priority to run. The thread that is interrupted by sched_
yield() goes to the end of the queue for its priority.
If no other thread is runnable at the priority of the calling
thread, the calling thread continues to run.
Threads with higher priority are allowed to preempt the calling
thread, so the sched_yield() function has no effect on the
scheduling of higher- or lower-priority threads.
The sched_yield() routine takes no arguments. No special
privileges are needed to use the sched_yield() function.
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.
[ENOSYS] The routine sched_yield() is not supported by this
implementation.
pthread_attr_setschedparam()
pthread_getschedparam()
pthread_setschedparam()