sched_yield(2) System Calls Manual sched_yield(2)

sched_yield - cedează procesorul

Biblioteca C standard (libc, -lc)

#include <sched.h>
int sched_yield(void);

sched_yield() face ca firul apelant să renunțe la CPU. Firul este mutat la sfârșitul cozii de așteptare pentru prioritatea sa statică și un nou fir ajunge să ruleze.

În caz de succes, sched_yield() returnează 0. În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.

În implementarea Linux, sched_yield() reușește întotdeauna.

POSIX.1-2008.

POSIX.1-2001 (dar opțional). POSIX.1-2008.

Înainte de POSIX.1-2008, sistemele pe care este disponibil sched_yield() defineau _POSIX_PRIORITY_SCHEDULING în <unistd.h>.

sched_yield() este destinat utilizării cu politicile de planificare în timp real (adică SCHED_FIFO sau SCHED_RR). Utilizarea sched_yield() cu politici de planificare nedeterministe, cum ar fi SCHED_OTHER, este nespecificată și foarte probabil înseamnă că proiectul aplicației dumneavoastră este defect.

În cazul în care firul apelant este singurul fir din lista de prioritate maximă în acel moment, acesta va continua să ruleze după un apel la sched_yield().

Evitați să apelați sched_yield() în mod inutil sau necorespunzător (de exemplu, atunci când resursele necesare altor fire de execuție programabile sunt încă deținute de apelant), deoarece acest lucru va duce la schimbări inutile de context, ceea ce va degrada performanța sistemului.

sched(7)

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

2 mai 2024 Pagini de manual de Linux 6.9.1