sched_yield man page


This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ (consult the corresponding Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux.

sched_yield — yield the processor


#include <sched.h>

int sched_yield(void);


The sched_yield() function shall force the running thread to relinquish the processor until it again becomes the head of its thread list. It takes no arguments.

Return Value

The sched_yield() function shall return 0 if it completes successfully; otherwise, it shall return a value of -1 and set errno to indicate the error.


No errors are defined.

The following sections are informative.

Application Usage

The conceptual model for scheduling semantics in POSIX.1‐2008 defines a set of thread lists. This set of thread lists is always present regardless of the scheduling options supported by the system. On a system where the Process Scheduling option is not supported, portable applications should not make any assumptions regarding whether threads from other processes will be on the same thread list.

See Also

The Base Definitions volume of POSIX.1‐2008, <sched.h>


2013 IEEE/The Open Group POSIX Programmer's Manual