NOM¶
pthread_attr_setinheritsched, pthread_attr_getinheritsched - Définir ou
obtenir l'attribut d'héritage d'ordonnancement d'un objet d'attributs de
thread
SYNOPSIS¶
#include <pthread.h>
int pthread_attr_setinheritsched(pthread_attr_t *attr,
int inheritsched);
int pthread_attr_getinheritsched(pthread_attr_t *attr,
int *inheritsched);
Compilez et effectuez l'édition des liens avec l'option -pthread.
DESCRIPTION¶
La fonction
pthread_attr_setinheritsched() définit l'attribut
d'héritage d'ordonnancement de l'objet d'attributs de thread auquel
attr fait référence à la valeur indiquée par
inheritsched. Cet attribut détermine si un thread créé
en utilisant l'objet d'attributs de thread
attr héritera les
paramètres d'ordonnancement du thread appelant, ou prendra la valeur
fournie par
attr.
Les valeurs suivantes peuvent être spécifiées dans
inheritsched :
- PTHREAD_INHERIT_SCHED
- Les threads qui sont créés en utilisant
attr héritent des attributs d'ordonnancement du thread
appelant. Les attributs d'ordonnancement dans attr sont
ignorés.
- PTHREAD_EXPLICIT_SCHED
- Les threads qui sont créés en utilisant
attr prennent comme attributs d'ordonnancement les valeurs
spécifiées dans l'objet d'attributs de thread.
La valeur par défaut de l'attribut d'ordonnancement pour un nouvel objet
d'attributs de thread est
PTHREAD_INHERIT_SCHED.
La fonction
pthread_attr_getinheritsched() renvoie, dans le tampon
pointé par
inheritsched, l'attribut contenant l'ordonnancement de
l'objet d'attributs de thread auquel
attr fait référence.
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_setinheritsched() peut échouer avec les erreurs
suivantes :
- EINVAL
- Valeur invalide pour inheritsched.
POSIX.1-2001 documente également une erreur
ENOTSUP (tentative de
définition de la priorité à une valeur non prise en charge)
pour
pthread_attr_setinheritsched().
POSIX.1-2001.
BOGUES¶
Dans glibc 2.8, si un objet d'attributs de thread est initialisé avec
pthread_attr_init(3), alors la politique d'ordonnancement de l'objet
des attributs est mis à
SCHED_OTHER et la priorité
d'ordonnancement à 0. Cependant, si l'attribut d'héritage
d'ordonnancement est mis à
PTHREAD_EXPLICIT_SCHED,un thread
créé avec l'objet d'attributs de thread va hériter de
manière erronée des attributs d'ordonnancement du thread appelant.
Pour éviter cette erreur, il faut positionner soit la politique
d'ordonnancement, soit l'attribut de priorité d'ordonnancement, de
manière explicite dans l'objet d'attributs de thread avant d'appeler
pthread_create(3).
EXEMPLE¶
Consultez
pthread_setschedparam(3).
VOIR AUSSI¶
sched_setscheduler(2),
pthread_attr_init(3),
pthread_attr_setschedparam(3),
pthread_attr_setschedpolicy(3),
pthread_create(3),
pthread_setschedparam(3),
pthread_setschedprio(3),
pthreads(7)
COLOPHON¶
Cette page fait partie de la publication 3.44 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> ».