|| Linux Programmer's Manual
NAME sched_yield - yield the processor
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
errno is set appropriately.
ERRORS In the Linux implementation,
sched_yield() always succeeds.
CONFORMING TO POSIX.1-2001.
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
POSIX systems on which
() is available define
Strategic calls to
() can improve performance by giving other threads or processes a chance to run when (heavily) contended resources (e.g., mutexes) have been released by the caller. Avoid calling
() unnecessarily or inappropriately (e.g., when resources 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.
(2) for a description of Linux scheduling
Programming for the real world - POSIX.4 by Bill O. Gallmeister, O'Reilly & Associates, Inc., ISBN 1-56592-074-0.
COLOPHON This page is part of release 3.53 of the Linux
man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.