Provided by: manpages-fr-dev_4.27.0-1_all bug

NOM

       pthread_spin_lock,  pthread_spin_trylock,  pthread_spin_unlock  —  Verrouiller et déverrouiller un verrou
       tournant

BIBLIOTHÈQUE

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

SYNOPSIS

       #include <pthread.h>

       int pthread_spin_lock(pthread_spinlock_t *lock);
       int pthread_spin_trylock(pthread_spinlock_t *lock);
       int pthread_spin_unlock(pthread_spinlock_t *lock);

   Exigences de macros de test de fonctionnalités pour la glibc (consulter feature_test_macros(7)) :

       pthread_spin_lock(), pthread_spin_trylock() :
           _POSIX_C_SOURCE >= 200112L

DESCRIPTION

       La fonction pthread_spin_lock() verrouille le verrou  tournant  auquel  se  réfère  lock.  Si  le  verrou
       tournant est actuellement déverrouillé, le thread appelant acquiert le verrou immédiatement. Si le verrou
       tournant  est  actuellement  verrouillé  par  un  autre thread, le thread appelant est en attente active,
       testant le verrou jusqu'à ce qu'il devienne disponible et, à ce moment là, le thread appelant acquiert le
       verrou.

       Appeler pthread_attr_init() sur un verrou qui est déjà possédé par l'appelant ou sur un  verrou  qui  n'a
       pas été initialisé avec pthread_spin_init(3) résulte en un comportement indéfini.

       La  fonction  pthread_spin_trylock()  est similaire à pthread_spin_lock(), sauf que si le verrou tournant
       auquel se réfère lock est actuellement verrouillé, alors, au lieu d'être en attente  active,  l'appel  se
       termine immédiatement avec l'erreur EBUSY.

       La  fonction  pthread_spin_unlock() déverrouille le verrou tournant auquel se réfère lock. Si des threads
       sont en attente active sur le verrou, un de ces threads acquiert le verrou.

       Appeler pthread_spin_unlock() sur  un  verrou  qui  n'est  pas  possédé  par  l'appelant  résulte  en  un
       comportement indéfini.

VALEUR RENVOYÉE

       En cas de réussite, ces fonction renvoient 0. En cas d'erreur, elles renvoient un numéro d'erreur.

ERREURS

       pthread_spin_lock() peut échouer avec les erreurs suivantes :

       EDEADLOCK
              Le système a détecté une situation d'interblocage.

       pthread_spin_trylock() peut échouer avec les erreurs suivantes :

       EBUSY  Le verrou tournant est actuellement verrouillé par un autre thread.

STANDARDS

       POSIX.1-2008.

HISTORIQUE

       glibc 2.2. POSIX.1-2001.

AVERTISSEMENTS

       Appliquer  une  des  fonctions décrites dans cette page à un verrou tournant non initialisé résulte en un
       comportement indéfini.

       Lisez soigneusement les NOTES dans pthread_spin_init(3).

VOIR AUSSI

       pthread_spin_destroy(3), pthread_spin_init(3), 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 <stephan.rafin@laposte.net>, Thierry Vignaud
       <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard
       <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau
       <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François
       <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard
       <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org>, David Prévot
       <david@tilapin.org>, Frédéric Hantrais <fhantrais@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 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.

Pages du manuel de Linux 6.9.1                     2 mai 2024                               pthread_spin_lock(3)