Provided by: manpages-fr-dev_3.57d1p1-1_all bug

NOM

       pthread_attr_setscope, pthread_attr_getscope - Définir ou obtenir la contention d'un objet
       d'attributs de thread

SYNOPSIS

       #include <pthread.h>

       int pthread_attr_setscope(pthread_attr_t *attr, int scope);
       int pthread_attr_getscope(pthread_attr_t *attr, int *scope);

       Compilez et effectuez l'édition des liens avec l'option -pthread.

DESCRIPTION

       La  fonction  pthread_attr_setscope()  définit  l'attribut  de   contention   de   l'objet
       d'attributs  de  thread  auquel  attr  fait  référence à la valeur indiquée par scope. Cet
       attribut détermine l'ensemble des threads avec lesquels un thread est en compétition  pour
       les  ressources,  telles  que  le  CPU.  POSIX.1-2001 spécifie deux valeurs possibles pour
       scope :

       PTHREAD_SCOPE_SYSTEM
              Le thread est en compétition pour les ressources avec tous les threads de tous  les
              processus  du système qui sont dans le même domaine d'allocation (un groupe composé
              d'un  ou  de  plusieurs  processeurs).  Les   threads   PTHREAD_SCOPE_SYSTEM   sont
              ordonnancés   entre   eux   en  fonction  de  leur  priorité  et  de  la  politique
              d'ordonnancement.

       PTHREAD_SCOPE_PROCESS
              Le thread est en compétition pour les ressources avec  tous  les  threads  du  même
              processus  du  système  qui  ont  aussi  été  créés avec PTHREAD_SCOPE_PROCESS. Les
              threads PTHREAD_SCOPE_PROCESS sont ordonnancés entre eux à l'intérieur du processus
              en  fonction  de leur priorité et de la politique d'ordonnancement. POSIX.1-2001 ne
              spécifie pas comment régler  la  compétition  entre  ces  threads  et  les  threads
              d'autres  processus  du  système, ni avec les threads du même processus qui ont été
              créés avec PTHREAD_SCOPE_SYSTEM.

       POSIX.1-2001 impose qu'une implémentation doit accepter au moins l'une de ces  résolutions
       de compétition. Linux accepte PTHREAD_SCOPE_SYSTEM, mais pas PTHREAD_SCOPE_PROCESS.

       Sur  les systèmes qui acceptent plusieurs arbitrages de compétition, pour que la politique
       définie par pthread_attr_setscope()  puisse être  prise  en  compte  lors  de  l'appel  de
       pthread_create(3),  l'appelant  doit définir l'attribut d'ordonnancement hérité de l'objet
       attr  au  moyen  de  pthread_attr_setinheritsched(3),   en   lui   assignant   la   valeur
       PTHREAD_EXPLICIT_SCHED.

       La  fonction  pthread_attr_getscope() renvoie, dans le tampon pointé par scope, l'attribut
       contenant le mode de résolution de compétition de l'objet d'attributs de thread attr.

VALEUR RENVOYÉE

       En cas de réussite, ces fonctions renvoient 0 ; en cas d'erreur elles renvoient un  numéro
       d'erreur non nul.

ERREURS

       pthread_attr_setscope() peut échouer avec les erreurs suivantes :

       EINVAL Une valeur invalide a été spécifiée dans scope.

       ENOTSUP
              La  valeur  PTHREAD_SCOPE_PROCESS  est  spécifiée  dans  scope,  or  elle n'est pas
              supportée sous Linux.

CONFORMITÉ

       POSIX.1-2001.

NOTES

       La valeur PTHREAD_SCOPE_SYSTEM indique typiquement qu'un thread dans l'espace  utilisateur
       est  rattaché directement à une entité unique d'ordonnancement du noyau. C'est le cas sous
       Linux avec  l'implémentation  obsolète  LinuxThreads,  mais  aussi  avec  l'implémentation
       moderne NPTL, qui sont toutes les deux des implémentations de threads 1:1.

       POSIX.1-2001 spécifie que chaque implémentation est libre de définir la valeur par défaut.

VOIR AUSSI

       pthread_attr_init(3), pthread_attr_setaffinity_np(3), pthread_attr_setinheritsched(3),
       pthread_attr_setschedparam(3), pthread_attr_setschedpolicy(3), pthread_create(3),
       pthreads(7)

COLOPHON

       Cette page fait partie de la publication 3.57 du projet man-pages Linux. Une description
       du projet et des instructions pour signaler des anomalies peuvent être trouvées à
       l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
       <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Denis Barbier (2010).

       Veuillez signaler toute erreur de traduction en écrivant à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le paquet
       manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la
       commande « man -L C <section> <page_de_man> ».