# French translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Gérard Delafond # Christophe Blaess , 1999, 2001, 2003, 2005, 2006. # Thierry Vignaud , 2000, 2002. # Alain Portal , 2003. # Denis Barbier , 2004. # Nicolas François , 2007, 2009. # Florentin Duneau , 2006, 2007, 2008, 2009. # Thomas Blein , 2011, 2014. # David Prévot , 2012. msgid "" msgstr "" "Project-Id-Version: glibc\n" "POT-Creation-Date: 2024-06-01 06:13+0200\n" "PO-Revision-Date: 2024-06-03 11:54+0200\n" "Last-Translator: Thomas Blein \n" "Language-Team: French \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 22.12.3\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #. type: TH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "pthread_mutex_init" msgstr "pthread_mutex_init" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-19" msgstr "19 mai 2024" #. type: TH #: archlinux debian-unstable #, no-wrap msgid "Linux man-pages 6.8" msgstr "Pages du manuel de Linux 6.8" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "NOM" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "pthread_mutex_init, pthread_mutex_lock, pthread_mutex_trylock, " "pthread_mutex_unlock, pthread_mutex_destroy - operations on mutexes" msgstr "" "pthread_mutex_init, pthread_mutex_lock, pthread_mutex_trylock, " "pthread_mutex_unlock, pthread_mutex_destroy - Opérations sur les mutex" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "SYNOPSIS" msgstr "SYNOPSIS" #. type: Plain text #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "B<#include Epthread.hE>\n" msgstr "B<#include Epthread.hE>\n" #. type: Plain text #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "" "BIB< = PTHREAD_MUTEX_INITIALIZER;>\n" "BIB< = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;>\n" "BIB< = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;>\n" msgstr "" "BIB< = PTHREAD_MUTEX_INITIALIZER;>\n" "BIB< = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;>\n" "BIB< = PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;>\n" #. type: Plain text #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "" "BIB<,>\n" "B< const pthread_mutexattr_t *>IB<);>\n" "BIB<);>\n" "BIB<);>\n" "BIB<);>\n" "BIB<);>\n" msgstr "" "BIB<,>\n" "B< const pthread_mutexattr_t *>IB<);>\n" "BIB<);>\n" "BIB<);>\n" "BIB<);>\n" "BIB<);>\n" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "DESCRIPTION" msgstr "DESCRIPTION" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "A mutex is a MUTual EXclusion device, and is useful for protecting shared " "data structures from concurrent modifications, and implementing critical " "sections and monitors." msgstr "" "Un mutex est un objet d'exclusion mutuelle (MUTual EXclusion), et il est " "très pratique pour protéger des données partagées de modifications " "simultanées et pour implémenter des sections critiques et moniteurs." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "A mutex has two possible states: unlocked (not owned by any thread), and " "locked (owned by one thread). A mutex can never be owned by two different " "threads simultaneously. A thread attempting to lock a mutex that is already " "locked by another thread is suspended until the owning thread unlocks the " "mutex first." msgstr "" "Un mutex peut être dans deux états\\ : déverrouillé (pris par aucun thread) " "ou verrouillé (pris par un thread). Un mutex ne peut être pris que par un " "seul thread à la fois. Un thread qui tente de verrouiller un mutex déjà " "verrouillé est suspendu jusqu'à ce que le mutex soit déverrouillé." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "B initializes the mutex object pointed to by I " "according to the mutex attributes specified in I. If " "I is B, default attributes are used instead." msgstr "" "B() initialise le mutex pointé par I selon les " "attributs de mutex spécifié par I. Si I vaut NULL, les " "paramètres par défaut sont utilisés." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "The LinuxThreads implementation supports only one mutex attributes, the " "I, which is either ``fast'', ``recursive'', or ``error " "checking''. The kind of a mutex determines whether it can be locked again " "by a thread that already owns it. The default kind is ``fast''. See " "B(3) for more information on mutex attributes." msgstr "" "L'implémentation LinuxThreads ne gère qu'un seul attribut, le I, qui peut être soit «\\ rapide\\ », «\\ récursif\\ » ou à «\\ " "vérification d'erreur\\ ». Le type de mutex détermine s'il peut être " "verrouillé plusieurs fois par le même thread. Le type par défaut est «\\ " "rapide\\ ». Voyez B(3) pour plus d'informations sur " "les attributs de mutex." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "Variables of type B can also be initialized statically, " "using the constants B (for fast mutexes), " "B (for recursive mutexes), and " "B (for error checking mutexes)." msgstr "" "Les variables de type B peuvent aussi être initialisées de " "manière statique, en utilisant les constantes B " "(pour les mutex «\\ rapides\\ »), B " "(pour les mutex «\\ récursifs\\ ») et " "B (pour les mutex à «\\ " "vérification d'erreur\\ »)." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "B locks the given mutex. If the mutex is currently " "unlocked, it becomes locked and owned by the calling thread, and " "B returns immediately. If the mutex is already locked " "by another thread, B suspends the calling thread until " "the mutex is unlocked." msgstr "" "B() verrouille le mutex. Si le mutex est déverrouillé, " "il devient verrouillé et il est possédé par le thread appelant et " "B() rend la main immédiatement. Si le mutex est déjà " "verrouillé par un autre thread, B suspend le thread " "appelant jusqu'à ce que le mutex soit déverrouillé." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "If the mutex is already locked by the calling thread, the behavior of " "B depends on the kind of the mutex. If the mutex is of " "the ``fast'' kind, the calling thread is suspended until the mutex is " "unlocked, thus effectively causing the calling thread to deadlock. If the " "mutex is of the ``error checking'' kind, B returns " "immediately with the error code B. If the mutex is of the " "``recursive'' kind, B succeeds and returns immediately, " "recording the number of times the calling thread has locked the mutex. An " "equal number of B operations must be performed before " "the mutex returns to the unlocked state." msgstr "" "Si le mutex est déjà verrouillé par le thread appelant, le comportement de " "B() dépend du type du mutex. Si ce dernier est de type " "«\\ rapide\\ », le thread appelant est suspendu jusqu'à ce que le mutex soit " "déverrouillé, plaçant ainsi le thread appelant en situation de blocage " "définitif. Si le mutex est de type «\\ vérification d'erreur\\ », " "B() rend la main immédiatement avec le code d'erreur " "B. Si le mutex est de type «\\ récursif\\ », " "B() rend la main immédiatement avec un code de retour " "indiquant le succès, enregistrant le nombre de fois où le thread appelant a " "verrouillé le mutex. Un nombre égal d'appels à B() " "doit être réalisé avant que le mutex retourne à l'état déverrouillé." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "B behaves identically to B, " "except that it does not block the calling thread if the mutex is already " "locked by another thread (or by the calling thread in the case of a ``fast'' " "mutex). Instead, B returns immediately with the " "error code B." msgstr "" "B() se comporte de la même manière que " "B(), excepté qu'elle ne bloque pas le thread appelant si " "le mutex est déjà verrouillé par un autre thread (ou par le thread appelant " "dans le cas d'un mutex «\\ rapide\\ »). Au contraire, " "B() rend la main immédiatement avec le code d'erreur " "B." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "B unlocks the given mutex. The mutex is assumed to be " "locked and owned by the calling thread on entrance to " "B. If the mutex is of the ``fast'' kind, " "B always returns it to the unlocked state. If it is " "of the ``recursive'' kind, it decrements the locking count of the mutex " "(number of B operations performed on it by the calling " "thread), and only when this count reaches zero is the mutex actually " "unlocked." msgstr "" "B() déverrouille le mutex. Celui-ci est supposé " "verrouillé, et ce par le thread courant en entrant dans " "B(). Si le mutex est de type «\\ rapide\\ », " "B() le réinitialise toujours à l'état déverrouillé. " "S'il est de type «\\ récursif\\ », son compteur de verrouillage est " "décrémenté (du nombre d'opérations B() réalisées sur le " "mutex par le thread appelant), et déverrouillé seulement quand ce compteur " "atteint 0." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "On ``error checking'' and ``recursive'' mutexes, B " "actually checks at run-time that the mutex is locked on entrance, and that " "it was locked by the same thread that is now calling " "B. If these conditions are not met, an error code is " "returned and the mutex remains unchanged. ``Fast'' mutexes perform no such " "checks, thus allowing a locked mutex to be unlocked by a thread other than " "its owner. This is non-portable behavior and must not be relied upon." msgstr "" "Sur les mutex «\\ vérification d'erreur\\ » et « récursif », " "B() vérifie lors de l'exécution que le mutex est " "verrouillé en entrant, et qu'il est verrouillé par le même thread que celui " "appelant B() Si ces conditions ne sont pas réunies, un " "code d'erreur est renvoyé et le mutex n'est pas modifié. Les mutex «\\ " "rapides\\ » ne réalisent pas de tels tests, permettant à un mutex verrouillé " "d'être déverrouillé par un thread autre que celui l'ayant verrouillé. Ce " "comportement n'est pas portable et l'on ne doit pas compter dessus." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "B destroys a mutex object, freeing the resources it " "might hold. The mutex must be unlocked on entrance. In the LinuxThreads " "implementation, no resources are associated with mutex objects, thus " "B actually does nothing except checking that the " "mutex is unlocked." msgstr "" "B() détruit un mutex, libérant les ressources qu'il " "détient. Le mutex doit être déverrouillé. Dans l'implémentation " "LinuxThreads, aucune ressource ne peut être associée à un mutex, aussi " "B() ne fait rien si ce n'est vérifier que le mutex " "n'est pas verrouillé." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "CANCELLATION" msgstr "ANNULATION" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "None of the mutex functions is a cancelation point, not even " "B, in spite of the fact that it can suspend a thread for " "arbitrary durations. This way, the status of mutexes at cancelation points " "is predictable, allowing cancelation handlers to unlock precisely those " "mutexes that need to be unlocked before the thread stops executing. " "Consequently, threads using deferred cancelation should never hold a mutex " "for extended periods of time." msgstr "" "Aucune des primitives relatives aux mutex n'est un point d'annulation, ni " "même B(), malgré le fait qu'il peut suspendre " "l'exécution du thread pour une longue durée. De cette manière, l'état des " "mutex aux points d'annulation est prévisible, permettant aux gestionnaires " "d'annulation de déverrouiller précisément ces mutex qui nécessitent d'être " "déverrouillés avant que l'exécution du thread ne s'arrête définitivement. " "Aussi, les threads travaillant en mode d'annulation retardée ne doivent-" "jamais verrouiller un mutex pour de longues périodes de temps." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "ASYNC-SIGNAL SAFETY" msgstr "ASYNC-SIGNAL SAFETY" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "The mutex functions are not async-signal safe. What this means is that they " "should not be called from a signal handler. In particular, calling " "B or B from a signal handler may " "deadlock the calling thread." msgstr "" "Les fonctions relatives aux mutex ne sont pas fiables par rapport aux " "signaux asynchrones et ne doivent donc pas être utilisées dans des " "gestionnaires de signaux. En particulier, appeler B() ou " "B() dans un gestionnaire de signal peut placer le " "thread appelant dans une situation de blocage définitif." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "RETURN VALUE" msgstr "VALEUR RENVOYÉE" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "B always returns 0. The other mutex functions return 0 " "on success and a non-zero error code on error." msgstr "" "B() retourne toujours 0. Les autres fonctions renvoient " "0 en cas de succès et un code d'erreur non nul en cas de problème." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "ERRORS" msgstr "ERREURS" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "The B function returns the following error code on error:" msgstr "" "La fonction B() renvoie l'un des codes d'erreur suivants " "en cas de problème\\ :" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "The mutex has not been properly initialized." msgstr "Le mutex n'a pas été initialisé correctement." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "The mutex is already locked by the calling thread (``error checking'' " "mutexes only)." msgstr "" "Le mutex est déjà verrouillé par le thread appelant (mutex à «\\ " "vérification d'erreur\\ » seulement)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "The B function returns the following error codes on " "error:" msgstr "" "La fonction B() renvoie l'un des codes d'erreur " "suivants en cas de problème\\ :" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "The mutex could not be acquired because it was currently locked." msgstr "Le mutex ne peut être verrouillé car il l'est déjà." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "The B function returns the following error code on " "error:" msgstr "" "La fonction B() renvoie le code d'erreur suivant en " "cas de problème\\ :" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "" "The calling thread does not own the mutex (``error checking'' mutexes only)." msgstr "" "Le thread appelant ne possède pas le mutex (mutex à «\\ vérification " "d'erreur\\ » seulement)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "The B function returns the following error code on " "error:" msgstr "" "La fonction B() renvoie le code d'erreur suivant en " "cas de problème\\ :" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed msgid "The mutex is currently locked." msgstr "Le mutex est déjà verrouillé." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "SEE ALSO" msgstr "VOIR AUSSI" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "B(3), B(3), " "B(3)." msgstr "" "B(3), B(3), " "B(3)." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "EXAMPLE" msgstr "EXEMPLE" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "A shared global variable I can be protected by a mutex as follows:" msgstr "" "Une variable globale partagée I peut être protégée par un mutex comme " "suit\\ :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "" "B\n" msgstr "" "B\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed msgid "" "All accesses and modifications to I should be bracketed by calls to " "B and B as follows:" msgstr "" "Tous les accès et modifications de I doivent être entourés de paires " "d'appels à B() et B() comme " "suit\\ :" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-tumbleweed #, no-wrap msgid "" "B\n" msgstr "" "B\n" #. type: TH #: debian-bookworm #, no-wrap msgid "PTHREAD_MUTEX" msgstr "PTHREAD_MUTEX" #. type: TH #: debian-bookworm #, no-wrap msgid "LinuxThreads" msgstr "LinuxThreads" #. type: Plain text #: debian-bookworm fedora-40 fedora-rawhide mageia-cauldron msgid "B<#include Epthread.hE>" msgstr "B<#include Epthread.hE>" #. type: Plain text #: debian-bookworm msgid "BIB< = PTHREAD_MUTEX_INITIALIZER;>" msgstr "BIB< = PTHREAD_MUTEX_INITIALIZER;>" #. type: Plain text #: debian-bookworm msgid "" "BIB< = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;>" msgstr "" "BIB< = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;>" #. type: Plain text #: debian-bookworm msgid "" "BIB< = " "PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;>" msgstr "" "BIB< = " "PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;>" #. type: Plain text #: debian-bookworm msgid "" "BIB<, const " "pthread_mutexattr_t *>IB<);>" msgstr "" "BIB<, const " "pthread_mutexattr_t *>IB<);>" #. type: Plain text #: debian-bookworm msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: debian-bookworm msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: debian-bookworm msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: debian-bookworm msgid "BIB<);>" msgstr "BIB<);>" #. type: Plain text #: debian-bookworm msgid "" "A mutex has two possible states: unlocked (not owned by any thread), and " "locked (owned by one thread). A mutex can never be owned by two different " "threads simultaneously. A thread attempting to lock a mutex that is already " "locked by another thread is suspended until the owning thread unlocks the " "mutex first." msgstr "" "Un mutex peut être dans deux états\\ : déverrouillé (pris par aucun thread) " "ou verrouillé (pris par un thread). Un mutex ne peut être pris que par un " "seul thread à la fois. Un thread qui tente de verrouiller un mutex déjà " "verrouillé est suspendu jusqu'à ce que le mutex soit déverrouillé." #. type: Plain text #: debian-bookworm msgid "" "The LinuxThreads implementation supports only one mutex attributes, the " "I, which is either ``fast'', ``recursive'', or ``error " "checking''. The kind of a mutex determines whether it can be locked again by " "a thread that already owns it. The default kind is ``fast''. See " "B(3) for more information on mutex attributes." msgstr "" "L'implémentation LinuxThreads ne gère qu'un seul attribut, le I, qui peut être soit «\\ rapide\\ », «\\ récursif\\ » ou à «\\ " "vérification d'erreur\\ ». Le type de mutex détermine s'il peut être " "verrouillé plusieurs fois par le même thread. Le type par défaut est «\\ " "rapide\\ ». Voyez B(3) pour plus d'informations sur " "les attributs de mutex." #. type: Plain text #: debian-bookworm msgid "" "B locks the given mutex. If the mutex is currently " "unlocked, it becomes locked and owned by the calling thread, and " "B returns immediately. If the mutex is already locked by " "another thread, B suspends the calling thread until the " "mutex is unlocked." msgstr "" "B() verrouille le mutex. Si le mutex est déverrouillé, " "il devient verrouillé et il est possédé par le thread appelant et " "B() rend la main immédiatement. Si le mutex est déjà " "verrouillé par un autre thread, B suspend le thread " "appelant jusqu'à ce que le mutex soit déverrouillé." #. type: Plain text #: debian-bookworm msgid "" "If the mutex is already locked by the calling thread, the behavior of " "B depends on the kind of the mutex. If the mutex is of " "the ``fast'' kind, the calling thread is suspended until the mutex is " "unlocked, thus effectively causing the calling thread to deadlock. If the " "mutex is of the ``error checking'' kind, B returns " "immediately with the error code B. If the mutex is of the " "``recursive'' kind, B succeeds and returns immediately, " "recording the number of times the calling thread has locked the mutex. An " "equal number of B operations must be performed before " "the mutex returns to the unlocked state." msgstr "" "Si le mutex est déjà verrouillé par le thread appelant, le comportement de " "B() dépend du type du mutex. Si ce dernier est de type " "«\\ rapide\\ », le thread appelant est suspendu jusqu'à ce que le mutex soit " "déverrouillé, plaçant ainsi le thread appelant en situation de blocage " "définitif. Si le mutex est de type «\\ vérification d'erreur\\ », " "B() rend la main immédiatement avec le code d'erreur " "B. Si le mutex est de type «\\ récursif\\ », " "B() rend la main immédiatement avec un code de retour " "indiquant le succès, enregistrant le nombre de fois où le thread appelant a " "verrouillé le mutex. Un nombre égal d'appels à B() " "doit être réalisé avant que le mutex retourne à l'état déverrouillé." #. type: Plain text #: debian-bookworm msgid "" "B behaves identically to B, " "except that it does not block the calling thread if the mutex is already " "locked by another thread (or by the calling thread in the case of a ``fast'' " "mutex). Instead, B returns immediately with the error " "code B." msgstr "" "B() se comporte de la même manière que " "B(), excepté qu'elle ne bloque pas le thread appelant si " "le mutex est déjà verrouillé par un autre thread (ou par le thread appelant " "dans le cas d'un mutex «\\ rapide\\ »). Au contraire, " "B() rend la main immédiatement avec le code d'erreur " "B." #. type: Plain text #: debian-bookworm msgid "" "B unlocks the given mutex. The mutex is assumed to be " "locked and owned by the calling thread on entrance to " "B. If the mutex is of the ``fast'' kind, " "B always returns it to the unlocked state. If it is of " "the ``recursive'' kind, it decrements the locking count of the mutex (number " "of B operations performed on it by the calling thread), " "and only when this count reaches zero is the mutex actually unlocked." msgstr "" "B() déverrouille le mutex. Celui-ci est supposé " "verrouillé, et ce par le thread courant en entrant dans " "B(). Si le mutex est de type «\\ rapide\\ », " "B() le réinitialise toujours à l'état déverrouillé. " "S'il est de type «\\ récursif\\ », son compteur de verrouillage est " "décrémenté (du nombre d'opérations B() réalisées sur le " "mutex par le thread appelant), et déverrouillé seulement quand ce compteur " "atteint 0." #. type: Plain text #: debian-bookworm msgid "" "On ``error checking'' and ``recursive'' mutexes, B " "actually checks at run-time that the mutex is locked on entrance, and that " "it was locked by the same thread that is now calling " "B. If these conditions are not met, an error code is " "returned and the mutex remains unchanged. ``Fast'' mutexes perform no such " "checks, thus allowing a locked mutex to be unlocked by a thread other than " "its owner. This is non-portable behavior and must not be relied upon." msgstr "" "Sur les mutex «\\ vérification d'erreur\\ » et « récursif », " "B() vérifie lors de l'exécution que le mutex est " "verrouillé en entrant, et qu'il est verrouillé par le même thread que celui " "appelant B() Si ces conditions ne sont pas réunies, un " "code d'erreur est renvoyé et le mutex n'est pas modifié. Les mutex «\\ " "rapides\\ » ne réalisent pas de tels tests, permettant à un mutex verrouillé " "d'être déverrouillé par un thread autre que celui l'ayant verrouillé. Ce " "comportement n'est pas portable et l'on ne doit pas compter dessus." #. type: Plain text #: debian-bookworm msgid "" "B destroys a mutex object, freeing the resources it " "might hold. The mutex must be unlocked on entrance. In the LinuxThreads " "implementation, no resources are associated with mutex objects, thus " "B actually does nothing except checking that the " "mutex is unlocked." msgstr "" "B() détruit un mutex, libérant les ressources qu'il " "détient. Le mutex doit être déverrouillé. Dans l'implémentation " "LinuxThreads, aucune ressource ne peut être associée à un mutex, aussi " "B() ne fait rien si ce n'est vérifier que le mutex " "n'est pas verrouillé." #. type: Plain text #: debian-bookworm msgid "" "None of the mutex functions is a cancellation point, not even " "B, in spite of the fact that it can suspend a thread for " "arbitrary durations. This way, the status of mutexes at cancellation points " "is predictable, allowing cancellation handlers to unlock precisely those " "mutexes that need to be unlocked before the thread stops executing. " "Consequently, threads using deferred cancellation should never hold a mutex " "for extended periods of time." msgstr "" "Aucune des primitives relatives aux mutex n'est un point d'annulation, ni " "même B(), malgré le fait qu'il peut suspendre " "l'exécution du thread pour une longue durée. De cette manière, l'état des " "mutex aux points d'annulation est prévisible, permettant aux gestionnaires " "d'annulation de déverrouiller précisément ces mutex qui nécessitent d'être " "déverrouillés avant que l'exécution du thread ne s'arrête définitivement. " "Aussi, les threads travaillant en mode d'annulation retardée ne doivent-" "jamais verrouiller un mutex pour de longues périodes de temps." #. type: Plain text #: debian-bookworm msgid "" "The mutex functions are not async-signal safe. What this means is that they " "should not be called from a signal handler. In particular, calling " "B or B from a signal handler may " "deadlock the calling thread." msgstr "" "Les fonctions relatives aux mutex ne sont pas fiables par rapport aux " "signaux asynchrones et ne doivent donc pas être utilisées dans des " "gestionnaires de signaux. En particulier, appeler B() ou " "B() dans un gestionnaire de signal peut placer le " "thread appelant dans une situation de blocage définitif." #. type: Plain text #: debian-bookworm msgid "" "B always returns 0. The other mutex functions return 0 " "on success and a non-zero error code on error." msgstr "" "B() retourne toujours 0. Les autres fonctions renvoient " "0 en cas de succès et un code d'erreur non nul en cas de problème." #. type: Plain text #: debian-bookworm msgid "the mutex has not been properly initialized." msgstr "Le mutex n'a pas été initialisé." #. type: Plain text #: debian-bookworm msgid "" "the mutex is already locked by the calling thread (``error checking'' " "mutexes only)." msgstr "" "Le mutex est déjà verrouillé par le thread appelant (mutex à «\\ " "vérification d'erreur\\ » seulement)." #. type: Plain text #: debian-bookworm msgid "the mutex could not be acquired because it was currently locked." msgstr "Le mutex ne peut être verrouillé car il l'est déjà." #. type: Plain text #: debian-bookworm msgid "" "the calling thread does not own the mutex (``error checking'' mutexes only)." msgstr "" "Le thread appelant ne possède pas le mutex (mutex à «\\ vérification " "d'erreur\\ » seulement)." #. type: Plain text #: debian-bookworm msgid "the mutex is currently locked." msgstr "Le mutex est déjà verrouillé." #. type: SH #: debian-bookworm #, no-wrap msgid "AUTHOR" msgstr "AUTEUR" #. type: Plain text #: debian-bookworm msgid "Xavier Leroy EXavier.Leroy@inria.frE" msgstr "Xavier Leroy EXavier.Leroy@inria.frE" #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 octobre 2023" #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Pages du manuel de Linux 6.06" #. type: Plain text #: fedora-40 fedora-rawhide mageia-cauldron msgid "" "BIB< = PTHREAD_MUTEX_INITIALIZER;> " "BIB< = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;> " "BIB< = " "PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;>" msgstr "" "BIB< = PTHREAD_MUTEX_INITIALIZER;> " "BIB< = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;> " "BIB< = " "PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP;>" #. type: Plain text #: fedora-40 fedora-rawhide mageia-cauldron msgid "" "BIB<, const " "pthread_mutexattr_t *>IB<);> BIB<);> BIB<);> BIB<);> BIB<);>" msgstr "" "BIB<, const " "pthread_mutexattr_t *>IB<);> BIB<);> BIB<);> BIB<);> BIB<);>" #. type: Plain text #: fedora-40 mageia-cauldron msgid "" "None of the mutex functions is a cancellation point, not even " "B, in spite of the fact that it can suspend a thread for " "arbitrary durations. This way, the status of mutexes at cancellation points " "is predictable, allowing cancellation handlers to unlock precisely those " "mutexes that need to be unlocked before the thread stops executing. " "Consequently, threads using deferred cancellation should never hold a mutex " "for extended periods of time." msgstr "" "Aucune des primitives relatives aux mutex n'est un point d'annulation, ni " "même B(), malgré le fait qu'il peut suspendre " "l'exécution du thread pour une longue durée. De cette manière, l'état des " "mutex aux points d'annulation est prévisible, permettant aux gestionnaires " "d'annulation de déverrouiller précisément ces mutex qui nécessitent d'être " "déverrouillés avant que l'exécution du thread ne s'arrête définitivement. " "Aussi, les threads travaillant en mode d'annulation retardée ne doivent-" "jamais verrouiller un mutex pour de longues périodes de temps." #. type: TH #: fedora-rawhide #, no-wrap msgid "2024-02-26" msgstr "26 février 2024" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Pages du manuel de Linux 6.7" #. type: TH #: opensuse-tumbleweed #, no-wrap msgid "Linux man-pages (unreleased)" msgstr "Pages du manuel de Linux (non publiées)"