NOM

pthread_attr_setaffinity_np, pthread_attr_getaffinity_np - Définir ou obtenir l'attribut d'affinité CPU d'un objet d'attributs de thread

BIBLIOTHÈQUE

Bibliothèque de threads POSIX ( libpthread, -lpthread)

SYNOPSIS

#define _GNU_SOURCE             /* Consultez 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);

DESCRIPTION

La fonction pthread_attr_setaffinity_np() définit l'attribut du masque d'affinité CPU de l'objet d'attributs de thread auquel attr fait référence à la valeur indiquée par cpuset. Cet attribut détermine le masque d'affinité CPU d'un thread créé en utilisant l'objet d'attributs de thread attr.
La fonction pthread_attr_getaffinity_np() renvoie, dans le tampon pointé par cpuset, l'attribut du masque d'affinité CPU de l'objet d'attributs de thread auquel attr fait référence.
Le paramètre cpusetsize est la longueur (en octets) du tampon pointé par cpuset. Typiquement, ce paramètre sera sizeof (cpu_set_t).
Pour plus de détails sur les masques d'affinité CPU, consultez sched_setaffinity(2). Pour une description d'un jeu de macros qui peuvent être utilisées pour manipuler et inspecter des ensembles de CPU, consultez CPU_SET(3).

VALEUR RENVOYÉE

En cas de succès, ces fonctions renvoient 0 ; en cas d'erreur, elles renvoient un code d'erreur non nul.

ERREURS

EINVAL
(pthread_attr_setaffinity_np()) Le cpuset indiquait un CPU en dehors de l'ensemble pris en charge par le noyau (l'option de configuration CONFIG_NR_CPUS du noyau définit l'intervalle de l'ensemble pris en charge par le type de données du noyau pour représenter les ensembles de CPU).
EINVAL
(pthread_attr_getaffinity_np()) Un CPU du masque d'affinité de l'objet d'attributs de thread auquel attr fait référence réside en dehors de l'intervalle indiqué par cpusetsize (c'est-à-dire, cpuset/cpusetsize est trop petit).
ENOMEM
(pthread_attr_setaffinity_np()) Impossible d'allouer de la mémoire.

VERSIONS

Ces fonctions sont fournies depuis la glibc 2.3.4.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface Attribut Valeur
pthread_attr_setaffinity_np(), pthread_attr_getaffinity_np() Sécurité des threads MT-Safe
 

STANDARDS

Ces fonctions sont des extensions GNU non standard ; d'où le suffixe « _np » (non portable) dans leur nom.

NOTES

Dans la glibc 2.3.3, uniquement, les versions de ces fonctions n'avaient pas de paramètre cpusetsize. À la place, la taille de l'ensemble de CPU fourni à l'appel système sous-jacent était toujours sizeof(cpu_set_t).

VOIR AUSSI

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

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <[email protected]>, Thierry Vignaud <[email protected]>, François Micaux, Alain Portal <[email protected]>, Jean-Philippe Guérard <[email protected]>, Jean-Luc Coulon (f5ibh) <[email protected]>, Julien Cristau <[email protected]>, Thomas Huriaux <[email protected]>, Nicolas François <[email protected]>, Florentin Duneau <[email protected]>, Simon Paillard <[email protected]>, Denis Barbier <[email protected]>, David Prévot <[email protected]> et Frédéric Hantrais <[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à [email protected]

Recommended readings

Pages related to pthread_attr_setaffinity_np you should read also:

Questions & Answers

Helpful answers and articles about pthread_attr_setaffinity_np you may found on these sites:
Stack Overflow Server Fault Super User Unix & Linux Ask Ubuntu Network Engineering DevOps Raspberry Pi Webmasters Google Search