Scroll to navigation

pthread_attr_setaffinity_np(3) Library Functions Manual pthread_attr_setaffinity_np(3)

NUME

pthread_attr_setaffinity_npp, pthread_attr_getaffinity_np - stabilește/obține atributul de afinitate CPU în obiectul de atribute ale firului de execuție

BIBLIOTECA

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

REZUMAT

#define _GNU_SOURCE             /* Consultați feature_test_macros(7) */
#include <pthread.h>
int pthread_attr_setaffinity_np(pthread_attr_t *attr,
                   size_t cpusetsize, const cpu_set_t *cpuset);
int pthread_attr_getaffinity_np(const pthread_attr_t *attr,
                   size_t cpusetsize, cpu_set_t *cpuset);

DESCRIERE

Funcția pthread_attr_setaffinity_np() stabilește atributul de mască de afinitate CPU al obiectului de atribute ale firelor la care se face referire prin attr la valoarea specificată în cpuset. Acest atribut determină masca de afinitate CPU a unui fir creat cu ajutorul obiectului de atribute ale firului attr.

Funcția pthread_attr_getaffinity_np() returnează atributul de mască de afinitate CPU al obiectului de atribute ale firului de execuție la care se face referire prin attr în memoria tampon indicată de cpuset.

Argumentul cpusetsize este lungimea (în octeți) a memoriei tampon la care indică cpuset. În mod obișnuit, acest argument ar trebui să fie specificat ca sizeof(cpu_set_t).

Pentru mai multe detalii despre măștile de afinitate CPU, consultați sched_setaffinity(2). Pentru o descriere a unui set de macrocomenzi care pot fi utilizate pentru a manipula și inspecta seturile de CPU, consultați CPU_SET(3).

VALOAREA RETURNATĂ

În caz de succes, aceste funcții returnează 0; în caz de eroare, ele returnează un număr de eroare diferit de zero.

ERORI

(pthread_attr_setaffinity_np()) cpuset a specificat o unitate centrală de procesare care nu face parte din setul acceptat de nucleu. (Opțiunea de configurare a nucleului CONFIG_NR_CPUS definește intervalul setului suportat de tipul de date al nucleului utilizat pentru a reprezenta seturile de unități centrale de procesare).
(pthread_attr_getaffinity_np()) O unitate centrală de procesare în masca de afinitate a obiectului de atribute ale firelor la care se face referire prin attr se află în afara intervalului specificat de cpusetsize (adică cpuset/cpusetsize este prea mică).
(pthread_attr_setaffinity_np()) Nu s-a putut aloca memorie.

VERSIUNI

Aceste funcții sunt furnizate începând cu glibc 2.3.4.

ATRIBUTE

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
pthread_attr_setaffinity_np(), pthread_attr_getaffinity_np() Siguranța firelor MT-Safe

STANDARDE

Aceste funcții sunt extensii GNU nestandardizate; de aici și sufixul „_np” („neportabilă”) din nume.

NOTE

Numai în glibc 2.3.3, au fost furnizate versiuni ale acestor funcții care nu aveau un argument cpusetsize. În schimb, dimensiunea setului de procesoare transmisă apelurilor de sistem subiacente era întotdeauna sizeof(cpu_set_t).

CONSULTAȚI ȘI

sched_setaffinity(2), pthread_attr_init(3), pthread_setaffinity_np(3), cpuset(7), pthreads(7)

TRADUCERE

Traducerea în limba română a acestui manual a fost creată 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.

15 decembrie 2022 Pagini de manual de Linux 6.03