Provided by: manpages-fr-dev_4.21.0-2_all bug

NOM

       pthread_mutexattr_init,        pthread_mutexattr_destroy,       pthread_mutexattr_settype,
       pthread_mutexattr_gettype — attibuts de création mutex

SYNOPSIS

       #include <pthread.h>

       int pthread_mutexattr_init(pthread_mutexattr_t *attr);

       int pthread_mutexattr_destroy(pthread_mutexattr_t *attr);

       int pthread_mutexattr_settype(pthread_mutexattr_t *attr, int type);

       int pthread_mutexattr_gettype(const pthread_mutexattr_t *attr, int *type);

DESCRIPTION

       Les attributs de création de mutex peuvent être spécifiés lors de  leur  création  en  les
       passant  en  tant  que second argument à pthread_mutex_init(3). Passer une valeur NULL est
       équivalent à un objet attributs de mutex avec tous les attributs positionnés à leur valeur
       par défaut.

       pthread_mutexattr_init  initialise  l'objet attributs de mutex attr et le remplit avec les
       valeurs d'attributs par défaut.

       pthread_mutexattr_destroy() détruit un objet attributs de mutex qui ne  doit  plus  jamais
       être  utilisé  à  moins d'être réinitialisé. pthread_mutexattr_destroy() ne fait rien dans
       l'implémentation LinuxThreads.

       LinuxThreads ne prend en charge qu'un attribut seul de mutex : le type de mutex  qui  peut
       être     soit     PTHREAD_MUTEX_FAST_NP     pour     les     mutex    « rapides »,    soit
       PTHREAD_MUTEX_RECURSIVE_NP pour les mutex « récursif\ », soit  PTHREAD_MUTEX_ERRORCHECK_NP
       pour  les  mutex  avec «\ vérification d'erreur\[u00BB]. Comme le suffixe NP l'indique, ce
       sont des extensions non portables aux spécifications POSIX  et  elles  ne  devraient  donc
       jamais être employées dans un programme portable.

       Le  type  de mutex détermine ce qu'il se passe si un thread essaye de verrouiller un mutex
       déjà  verrouillé  par  pthread_mutex_lock(3).  Si  le  mutex  est  de   type   « rapide »;
       pthread_mutex_lock(3)  suspend simplement le thread appelant. Si le mutex est de type avec
       « vérification d'erreur », pthread_mutex_lock(3) rend la main immédiatement avec  le  code
       d'erreur  EDEADLK.  Si  le mutex est de type « récursif », l'appel à pthread_mutex_lock(3)
       rend la main immédiatement avec un code de retour de réussite. Le nombre  de  verrouillage
       par  le  thread  possédant  le  mutex est enregistré dans le mutex. Le thread possédant le
       mutex doit appeler pthread_mutex_unlock(3) le même nombre de fois afin que le mutex  passe
       à l'état déverrouillé.

       Le type de mutex par défaut est « rapide », c'est-à-dire, PTHREAD_MUTEX_FAST_NP.

       pthread_mutexattr_settype  définit  l'attribut  de  type  de  mutex  dans attr à la valeur
       spécifiée par type.

       pthread_mutexattr_gettype récupère la valeur actuelle de l'attribut de type de mutex  dans
       attr et la stocke à l'emplacement pointé par type.

VALEUR RENVOYÉE

       pthread_mutexattr_init,  pthread_mutexattr_destroy  and  pthread_mutexattr_gettype renvoie
       toujours 0.

       pthread_mutexattr_settype renvoie 0 en cas de réussite et un code  d'erreur  différent  de
       zéro en cas d'erreur.

ERREURS

       En cas d'erreur, pthread_mutexattr_settype renvoie le code d'erreur suivant :

       EINVAL type    n'est   ni   PTHREAD_MUTEX_FAST_NP,   ni   PTHREAD_MUTEX_RECURSIVE_NP,   ni
              PTHREAD_MUTEX_ERRORCHECK_NP

AUTEUR

       Xavier Leroy <Xavier.Leroy@inria.fr>

VOIR AUSSI

       pthread_mutex_init(3), pthread_mutex_lock(3), pthread_mutex_unlock(3).

TRADUCTION

       La  traduction  française  de  cette  page  de  manuel  a  été  créée  par  Alain   Portal
       <aportal@univ-montp2.fr>,  Christophe  Blaess  <https://www.blaess.fr/christophe/>,  David
       Prévot  <david@tilapin.org>,  Denis   Barbier   <barbier@debian.org>,   Florentin   Duneau
       <fduneau@gmail.com>,  François  Micaux,  Frédéric Hantrais <fhantrais@gmail.com>, Jean-Luc
       Coulon       (f5ibh)       <jean-luc.coulon@wanadoo.fr>,       Jean-Philippe       Guérard
       <fevrier@tigreraye.org>,    Julien   Cristau   <jcristau@debian.org>,   Nicolas   François
       <nicolas.francois@centraliens.net>,     Simon     Paillard     <simon.paillard@resel.enst-
       bretagne.fr>,     Stéphan     Rafin     <stephan.rafin@laposte.net>,    Thierry    Vignaud
       <tvignaud@mandriva.com>,    Thomas    Blein     <tblein@tblein.eu>,     Thomas     Huriaux
       <thomas.huriaux@gmail.com> et Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General
       Public  License  version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   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 à ⟨debian-l10n-french@lists.debian.org⟩.

                                           LinuxThreads                      PTHREAD_MUTEXATTR(3)