pthread_attr_setscope(3) Library Functions Manual pthread_attr_setscope(3) NOM pthread_attr_setscope, pthread_attr_getscope -- Definir ou obtenir l'attribut portee de competition d'un objet d'attributs de thread BIBLIOTHEQUE Bibliotheque de threads POSIX (libpthread, -lpthread) SYNOPSIS #include int pthread_attr_setscope(pthread_attr_t *attr, int portee); int pthread_attr_getscope(const pthread_attr_t *restrict attr, int *restrict portee); DESCRIPTION La fonction pthread_attr_setscope() definit l'attribut de portee (<< scope >>) de competition de l'objet d'attributs de thread auquel attr fait reference a la valeur indiquee par portee. Cet attribut determine l'ensemble des threads avec lesquels un thread est en competition pour les ressources, telles que le CPU. POSIX.1 specifie deux valeurs possibles pour portee : PTHREAD_SCOPE_SYSTEM Le thread est en competition pour les ressources avec tous les threads de tous les processus du systeme qui sont dans le meme domaine d'ordonnancement (un groupe compose d'un ou de plusieurs processeurs). Les threads PTHREAD_SCOPE_SYSTEM sont ordonnances entre eux en fonction de leur priorite et de la politique d'ordonnancement. PTHREAD_SCOPE_PROCESS Le thread est en competition pour les ressources avec tous les threads du meme processus du systeme qui ont aussi ete crees avec PTHREAD_SCOPE_PROCESS. Les threads PTHREAD_SCOPE_PROCESS sont ordonnances entre eux a l'interieur du processus en fonction de leur priorite et de la politique d'ordonnancement. POSIX.1 ne specifie pas comment regler la competition entre ces threads et les threads d'autres processus du systeme, ni avec les threads du meme processus qui ont ete crees avec PTHREAD_SCOPE_SYSTEM. POSIX.1 impose qu'une implementation doit accepter au moins l'une de ces portees de competition. Linux accepte PTHREAD_SCOPE_SYSTEM, mais pas PTHREAD_SCOPE_PROCESS. Sur les systemes qui acceptent plusieurs portees de competition, pour que la politique definie par pthread_attr_setscope() puisse etre prise en compte lors de l'appel de pthread_create(3), l'appelant doit definir l'attribut d'ordonnancement herite de l'objet d'attributs 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 pointe par portee, l'attribut de portee de competition de l'objet d'attributs de thread attr. VALEUR RENVOYEE En cas de succes, ces fonctions renvoient 0 ; en cas d'erreur, elles renvoient un code d'erreur non nul. ERREURS pthread_attr_setscope() peut echouer avec les erreurs suivantes : EINVAL Une valeur non valable a ete specifiee dans portee. ENOTSUP La valeur PTHREAD_SCOPE_PROCESS est specifiee dans portee, or elle n'est pas prise en charge sous Linux. ATTRIBUTS Pour une explication des termes utilises dans cette section, consulter attributes(7). +---------------------------------+--------------------------+---------+ |Interface | Attribut | Valeur | +---------------------------------+--------------------------+---------+ |pthread_attr_setscope(), | Securite des threads | MT-Safe | |pthread_attr_getscope() | | | +---------------------------------+--------------------------+---------+ STANDARDS POSIX.1-2008. HISTORIQUE POSIX.1-2001. NOTES La porte de competition PTHREAD_SCOPE_SYSTEM indique typiquement qu'un thread dans l'espace utilisateur est rattache directement a une entite unique d'ordonnancement du noyau. C'est le cas sous Linux avec l'implementation obsolete LinuxThreads, mais aussi avec l'implementation moderne NPTL, qui sont toutes les deux des implementations de threads 1:1. POSIX.1 specifie que la portee de competition par defaut est definie par l'implementation. 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) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot , Frederic Hantrais et Jean- Pierre Giraud Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 31 octobre 2023 pthread_attr_setscope(3)