Minix Man Pages
home | helpx minix x x minixx SCHED_YIELD(2) Linux Programmer's Manual SCHED_YIELD(2) NAME sched_yield - yield the processor SYNOPSIS #include <sched.h> int sched_yield(void); DESCRIPTION sched_yield() causes the calling thread to relinquish the CPU. The thread is moved to the end of the queue for its static priority and a new thread gets to run. RETURN VALUE On success, sched_yield() returns 0. On error, -1 is returned, and er- rno is set appropriately. ERRORS In the Linux implementation, sched_yield() always succeeds. CONFORMING TO POSIX.1-2001, POSIX.1-2008. NOTES If the calling thread is the only thread in the highest priority list at that time, it will continue to run after a call to sched_yield(). POSIX systems on which sched_yield() is available define _POSIX_PRIOR- ITY_SCHEDULING in _unistd.h_. Strategic calls to sched_yield() can improve performance by giving other threads or processes a chance to run when (heavily) contended re- sources (e.g., mutexes) have been released by the caller. Avoid call- ing sched_yield() unnecessarily or inappropriately (e.g., when re- sources needed by other schedulable threads are still held by the caller), since doing so will result in unnecessary context switches, which will degrade system performance. sched_yield() is intended for use with real-time scheduling policies (i.e., SCHED_FIFO or SCHED_RR). Use of sched_yield() with nondetermin- istic scheduling policies such as SCHED_OTHER is unspecified and very likely means your application design is broken. SEE ALSO sched(7) COLOPHON This page is part of release 5.05 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/. Linux 2017-09-15 SCHED_YIELD(2)
NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | CONFORMING TO | NOTES | SEE ALSO | COLOPHON