pthread_setconcurrency(3)

NUME
pthread_setconcurrency, pthread_getconcurrency - stabilește/obține nivelul de concurență

BIBLIOTECA
Biblioteca de fire de execuție POSIX (libpthread, -lpthread)

SINOPSIS
#include <pthread.h>

int pthread_setconcurrency(int new_level);
int pthread_getconcurrency(void);

DESCRIERE
Funcția pthread_setconcurrency() informează implementarea cu privire la nivelul de simultaneitate dorit de aplicație, specificat în new_level. Implementarea ia acest lucru doar ca un indiciu: POSIX.1 nu specifică nivelul de concurență care ar trebui să fie furnizat ca urmare a apelării pthread_setconcurrency().

Specificând new_level ca fiind 0, se solicită implementării să gestioneze nivelul de concurență după cum consideră adecvat.

pthread_getconcurrency() returnează valoarea curentă a nivelului de simultaneitate pentru acest proces.

VALOAREA RETURNATĂ
În caz de succes, pthread_setconcurrency() returnează 0; în caz de eroare, returnează un număr de eroare diferit de zero.

pthread_getconcurrency() reușește întotdeauna, returnând nivelul de concurență stabilit printr-un apel anterior la pthread_setconcurrency(), sau 0, dacă pthread_setconcurrency() nu a fost apelat anterior.

ERORI-IEȘIRE
pthread_setconcurrency() poate eșua cu următoarea eroare:

EINVAL
    new_level este negativ.

POSIX.1 documentează, de asemenea, o eroare EAGAIN („valoarea specificată de new_level ar determina depășirea unei resurse de sistem”).

ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare
pthread_setconcurrency(), pthread_getconcurrency() | Siguranța firelor | MT-Safe

STANDARDE
POSIX.1-2008.

ISTORIC
glibc 2.1. POSIX.1-2001.

NOTE
Nivelul implicit de concurență(simultaneitate) este 0.

Nivelurile de concurență sunt semnificative numai pentru implementările de fire M:N, în care, în orice moment, un subset din setul de fire de la nivelul utilizatorului al unui proces poate fi legat de un număr mai mic de entități de programare a nucleului. Stabilirea nivelului de concurență permite aplicației să ofere sistemului un indiciu cu privire la numărul de entități de planificare a nucleului care ar trebui să fie furnizate pentru o execuție eficientă a aplicației.

Atât LinuxThreads, cât și NPTL sunt implementări 1:1, astfel încât stabilirea nivelului de concurență nu are nicio semnificație. Cu alte cuvinte, pe Linux, aceste funcții există doar pentru compatibilitatea cu alte sisteme și nu au niciun efect asupra execuției unui program.

CONSULTAȚI ȘI
pthread_attr_setscope(3), pthreads(7)

TRADUCERE
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 (https://www.gnu.org/licenses/gpl-3.0.html) 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.