1
0
Fork 0

threading: thread & thread-local (#703)

Merci @deronnax \o/
This commit is contained in:
Mathieu Dupuy 2019-05-11 19:24:01 +02:00 committed by Julien Palard
parent c8cf445500
commit 7316208a62
2 changed files with 209 additions and 10 deletions

2
dict
View File

@ -82,6 +82,8 @@ réexécuter
référençable
référençables
réimplémenter
réimplémente
réimplémentez
résolveurs
ſ
sérialisable

View File

@ -6,17 +6,19 @@ msgstr ""
"Project-Id-Version: Python 3.6\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-12-21 09:48+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"PO-Revision-Date: 2019-04-12 00:15+0200\n"
"Language-Team: FRENCH <traductions@lists.afpy.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Last-Translator: Mathieu Dupuy <deronnax@gmail.com>\n"
"X-Generator: Poedit 2.2.1\n"
#: ../Doc/library/threading.rst:2
msgid ":mod:`threading` --- Thread-based parallelism"
msgstr ""
":mod:`threading` — Parallélisme basé sur les fils dexécution (*threads*)"
#: ../Doc/library/threading.rst:7
msgid "**Source code:** :source:`Lib/threading.py`"
@ -27,10 +29,14 @@ msgid ""
"This module constructs higher-level threading interfaces on top of the lower "
"level :mod:`_thread` module. See also the :mod:`queue` module."
msgstr ""
"Ce module élabore des interfaces haut-niveau de fils d'exécutions multiples "
"(*threading*) conçues en s'appuyant sur le module bas-niveau :mod:`_thread`. "
"Voir aussi le module :mod:`queue`."
#: ../Doc/library/threading.rst:14
msgid "This module used to be optional, it is now always available."
msgstr ""
"Ce module était auparavant optionnel, il est maintenant toujours disponible."
#: ../Doc/library/threading.rst:19
msgid ""
@ -38,16 +44,21 @@ msgid ""
"methods and functions in this module in the Python 2.x series are still "
"supported by this module."
msgstr ""
"Bien qu'ils ne soient pas listés ci-dessous, ce module gère toujours les "
"noms en ``camelCase`` utilisés pour certaines méthodes et fonctions de ce "
"module dans la série Python 2.x."
#: ../Doc/library/threading.rst:24
msgid "This module defines the following functions:"
msgstr ""
msgstr "Ce module définit les fonctions suivantes :"
#: ../Doc/library/threading.rst:29
msgid ""
"Return the number of :class:`Thread` objects currently alive. The returned "
"count is equal to the length of the list returned by :func:`.enumerate`."
msgstr ""
"Renvoie le nombre d'objets :class:`Thread` actuellement vivants. Le compte "
"renvoyé est égal à la longueur de la liste renvoyée par :func:`.enumerate`."
#: ../Doc/library/threading.rst:35
msgid ""
@ -56,6 +67,10 @@ msgid ""
"through the :mod:`threading` module, a dummy thread object with limited "
"functionality is returned."
msgstr ""
"Renvoie l'objet :class:`Thread` courant, correspondant au fil de contrôle de "
"l'appelant. Si le fil de contrôle de l'appelant n'a pas été créé via le "
"module :mod:`Thread`, un objet *thread* factice aux fonctionnalités limitées "
"est renvoyé."
#: ../Doc/library/threading.rst:43
msgid ""
@ -65,6 +80,11 @@ msgid ""
"identifiers may be recycled when a thread exits and another thread is "
"created."
msgstr ""
"Renvoie l'\"identificateur de fil\" du fil d'exécution courant. C'est un "
"entier non nul. Sa valeur n'a pas de signification directe ; il est destiné "
"à être utilisé comme valeur magique opaque, par exemple comme clef de "
"dictionnaire de données pour chaque fil. Les identificateurs de fils peuvent "
"être recyclés lorsqu'un fil se termine et qu'un autre fil est créé."
#: ../Doc/library/threading.rst:54
msgid ""
@ -73,12 +93,19 @@ msgid ""
"`current_thread`, and the main thread. It excludes terminated threads and "
"threads that have not yet been started."
msgstr ""
"Renvoie une liste de tous les objets fil d'exécution :class:`Thread` "
"actuellement vivants. La liste inclut les fils démons, les fils factices "
"créés par :func:`current_thread` et le fil principal. Elle exclut les fils "
"terminés et les fils qui n'ont pas encore été lancés."
#: ../Doc/library/threading.rst:62
msgid ""
"Return the main :class:`Thread` object. In normal conditions, the main "
"thread is the thread from which the Python interpreter was started."
msgstr ""
"Renvoie l'objet fil d'exécution :class:`Thread` principal. Dans des "
"conditions normales, le fil principal est le fil à partir duquel "
"l'interpréteur Python a été lancé."
#: ../Doc/library/threading.rst:73
msgid ""
@ -86,6 +113,10 @@ msgid ""
"module. The *func* will be passed to :func:`sys.settrace` for each thread, "
"before its :meth:`~Thread.run` method is called."
msgstr ""
"Attache une fonction de traçage pour tous les fils d'exécution démarrés "
"depuis le module :mod:`Thread`. La fonction *func* est passée à :func:`sys."
"settrace` pour chaque fil, avant que sa méthode :meth:`~Thread.run` soit "
"appelée."
#: ../Doc/library/threading.rst:82
msgid ""
@ -93,6 +124,10 @@ msgid ""
"module. The *func* will be passed to :func:`sys.setprofile` for each "
"thread, before its :meth:`~Thread.run` method is called."
msgstr ""
"Attache une fonction de profilage pour tous les fils d'exécution démarrés "
"depuis le module :mod:`Threading`. La fonction *func* est passée à :func:"
"`sys.setprofile` pour chaque fil, avant que sa méthode :meth:`~Thread.run` "
"soit appelée."
#: ../Doc/library/threading.rst:89
msgid ""
@ -112,6 +147,24 @@ msgid ""
"stack size is the suggested approach in the absence of more specific "
"information)."
msgstr ""
"Renvoie la taille de la pile d'exécution utilisée lors de la création de "
"nouveaux fils d'exécution. L'argument optionnel *size* spécifie la taille de "
"pile à utiliser pour les fils créés ultérieurement, et doit être 0 (pour "
"utiliser la taille de la plate-forme ou la valeur configurée par défaut) ou "
"un entier positif supérieur ou égal à 32 768 (32 Kio). Si *size* n'est pas "
"spécifié, 0 est utilisé. Si la modification de la taille de la pile de fils "
"n'est pas prise en charge, une :exc:`RuntimeError` est levée. Si la taille "
"de pile spécifiée n'est pas valide, une :exc:`ValueError` est levée et la "
"taille de pile n'est pas modifiée. 32 Kio est actuellement la valeur "
"minimale de taille de pile prise en charge pour garantir un espace de pile "
"suffisant pour l'interpréteur lui-même. Notez que certaines plates-formes "
"peuvent avoir des restrictions particulières sur les valeurs de taille de la "
"pile, telles que l'exigence d'une taille de pile minimale > 32 Kio ou d'une "
"allocation en multiples de la taille de page de la mémoire du système la "
"documentation de la plate-forme devrait être consultée pour plus "
"d'informations (4 Kio sont courantes ; en l'absence de renseignements plus "
"spécifiques, l'approche proposée est l'utilisation de multiples de 4 096 "
"pour la taille de la pile)."
#: ../Doc/library/threading.rst:104
msgid ""
@ -122,7 +175,7 @@ msgstr ""
#: ../Doc/library/threading.rst:107
msgid "This module also defines the following constant:"
msgstr ""
msgstr "Ce module définit également la constante suivante :"
#: ../Doc/library/threading.rst:111
msgid ""
@ -131,12 +184,18 @@ msgid ""
"Specifying a timeout greater than this value will raise an :exc:"
"`OverflowError`."
msgstr ""
"La valeur maximale autorisée pour le paramètre *timeout* des fonctions "
"bloquantes (:meth:`Lock.acquire`, :meth:`RLock.acquire`, :meth:`Condition."
"wait`, etc.). Spécifier un délai d'attente supérieur à cette valeur lève "
"une :exc:`OverflowError`."
#: ../Doc/library/threading.rst:119
msgid ""
"This module defines a number of classes, which are detailed in the sections "
"below."
msgstr ""
"Ce module définit un certain nombre de classes, qui sont détaillées dans les "
"sections ci-dessous."
#: ../Doc/library/threading.rst:122
msgid ""
@ -148,14 +207,24 @@ msgid ""
"stopped, suspended, resumed, or interrupted. The static methods of Java's "
"Thread class, when implemented, are mapped to module-level functions."
msgstr ""
"La conception de ce module est librement basée sur le modèle des fils "
"d'exécution de Java. Cependant, là où Java fait des verrous et des variables "
"de condition le comportement de base de chaque objet, ils sont des objets "
"séparés en Python. La classe Python :class:`Thread` prend en charge un sous-"
"ensemble du comportement de la classe *Thread* de Java ; actuellement, il "
"n'y a aucune priorité, aucun groupe de fils d'exécution, et les fils ne "
"peuvent être détruits, arrêtés, suspendus, repris ni interrompus. Les "
"méthodes statiques de la classe *Thread* de Java, lorsqu'elles sont "
"implémentées, correspondent à des fonctions au niveau du module."
#: ../Doc/library/threading.rst:130
msgid "All of the methods described below are executed atomically."
msgstr ""
"Toutes les méthodes décrites ci-dessous sont exécutées de manière atomique."
#: ../Doc/library/threading.rst:134
msgid "Thread-Local Data"
msgstr ""
msgstr "Données locales au fil d'exécution"
#: ../Doc/library/threading.rst:136
msgid ""
@ -163,24 +232,31 @@ msgid ""
"thread-local data, just create an instance of :class:`local` (or a subclass) "
"and store attributes on it::"
msgstr ""
"Les données locales au fil d'exécution (*thread-local data*) sont des "
"données dont les valeurs sont propres à chaque fil. Pour gérer les données "
"locales au fil, il suffit de créer une instance de :class:`local` (ou une "
"sous-classe) et d'y stocker des données : ::"
#: ../Doc/library/threading.rst:143
msgid "The instance's values will be different for separate threads."
msgstr ""
"Les valeurs dans l'instance sont différentes pour des *threads* différents."
#: ../Doc/library/threading.rst:148
msgid "A class that represents thread-local data."
msgstr ""
msgstr "Classe qui représente les données locales au fil d'exécution."
#: ../Doc/library/threading.rst:150
msgid ""
"For more details and extensive examples, see the documentation string of "
"the :mod:`_threading_local` module."
msgstr ""
"Pour plus de détails et de nombreux exemples, voir la chaîne de "
"documentation du module :mod:`_threading_local`."
#: ../Doc/library/threading.rst:157
msgid "Thread Objects"
msgstr ""
msgstr "Objets *Threads*"
#: ../Doc/library/threading.rst:159
msgid ""
@ -191,6 +267,13 @@ msgid ""
"be overridden in a subclass. In other words, *only* override the :meth:"
"`~Thread.__init__` and :meth:`~Thread.run` methods of this class."
msgstr ""
"La classe fil d'exécution :class:`Thread` représente une activité qui est "
"exécutée dans un fil d'exécution séparé. Il y a deux façons de spécifier "
"l'activité : en passant un objet appelable au constructeur, ou en ré-"
"implémentant la méthode :meth:`~Thread.run` dans une sous-classe. Aucune "
"autre méthode (à l'exception du constructeur) ne doit être remplacée dans "
"une sous-classe. En d'autres termes, réimplémentez *seulement* les méthodes :"
"meth:`~Thread.__init__` et :meth:`~Thread.run` de cette classe."
#: ../Doc/library/threading.rst:166
msgid ""
@ -198,6 +281,9 @@ msgid ""
"thread's :meth:`~Thread.start` method. This invokes the :meth:`~Thread.run` "
"method in a separate thread of control."
msgstr ""
"Une fois qu'un objet fil d'exécution est créé, son activité doit être lancée "
"en appelant la méthode :meth:`~Thread.start` du fil. Ceci invoque la "
"méthode :meth:`~Thread.run` dans un fil d'exécution séparé."
#: ../Doc/library/threading.rst:170
msgid ""
@ -206,6 +292,10 @@ msgid ""
"normally, or by raising an unhandled exception. The :meth:`~Thread."
"is_alive` method tests whether the thread is alive."
msgstr ""
"Une fois que l'activité du fil d'exécution est lancée, le fil est considéré "
"comme « vivant ». Il cesse d'être vivant lorsque sa méthode :meth:`~Thread."
"run` se termine soit normalement, soit en levant une exception non gérée. "
"La méthode :meth:`~Thread.is_alive` teste si le fil est vivant."
#: ../Doc/library/threading.rst:175
msgid ""
@ -213,12 +303,17 @@ msgid ""
"the calling thread until the thread whose :meth:`~Thread.join` method is "
"called is terminated."
msgstr ""
"D'autres fils d'exécution peuvent appeler la méthode :meth:`~Thread.join` "
"d'un fil. Ceci bloque le fil appelant jusqu'à ce que le fil dont la méthode :"
"meth:`~Thread.join` est appelée soit terminé."
#: ../Doc/library/threading.rst:179
msgid ""
"A thread has a name. The name can be passed to the constructor, and read or "
"changed through the :attr:`~Thread.name` attribute."
msgstr ""
"Un fil d'exécution a un nom. Le nom peut être passé au constructeur, et lu "
"ou modifié via l'attribut :attr:`~Thread.name`."
#: ../Doc/library/threading.rst:182
msgid ""
@ -228,6 +323,11 @@ msgid ""
"can be set through the :attr:`~Thread.daemon` property or the *daemon* "
"constructor argument."
msgstr ""
"Un fil d'exécution peut être marqué comme « fil démon ». Un programme Python "
"se termine quand il ne reste plus que des fils démons. La valeur initiale "
"est héritée du fil d'exécution qui l'a créé. Cette option peut être définie "
"par la propriété :attr:`~Thread.daemon` ou par l'argument *daemon* du "
"constructeur."
#: ../Doc/library/threading.rst:189
msgid ""
@ -236,12 +336,20 @@ msgid ""
"you want your threads to stop gracefully, make them non-daemonic and use a "
"suitable signalling mechanism such as an :class:`Event`."
msgstr ""
"Les fils d'exécution démons sont brusquement terminés à l'arrêt du programme "
"Python. Leurs ressources (fichiers ouverts, transactions de base de données, "
"etc.) peuvent ne pas être libérées correctement. Si vous voulez que vos fils "
"s'arrêtent proprement, faites en sorte qu'ils ne soient pas démoniques et "
"utilisez un mécanisme de signalisation approprié tel qu'un objet évènement :"
"class:`Event`."
#: ../Doc/library/threading.rst:194
msgid ""
"There is a \"main thread\" object; this corresponds to the initial thread of "
"control in the Python program. It is not a daemon thread."
msgstr ""
"Il y a un objet \"fil principal\", qui correspond au fil de contrôle initial "
"dans le programme Python. Ce n'est pas un fil démon."
#: ../Doc/library/threading.rst:197
msgid ""
@ -252,41 +360,62 @@ msgid ""
"alive and daemonic, and cannot be :meth:`~Thread.join`\\ ed. They are never "
"deleted, since it is impossible to detect the termination of alien threads."
msgstr ""
"Il y a une possibilité que des objets fil d'exécution « fictifs » soient "
"créés. Ce sont des objets correspondant à des fils d'exécution "
 étrangers », qui sont des fils de contrôle démarrés en dehors du module de "
"*threading*, par exemple directement depuis du code C. Les objets fils "
"d'exécution fictifs ont des fonctionnalités limitées ; ils sont toujours "
"considérés comme vivants et démoniques, et ne peuvent pas être attendus via :"
"meth:`~Thread.join`. Ils ne sont jamais supprimés, car il est impossible de "
"détecter la fin des fils d'exécution étrangers."
#: ../Doc/library/threading.rst:208
msgid ""
"This constructor should always be called with keyword arguments. Arguments "
"are:"
msgstr ""
"Ce constructeur doit toujours être appelé avec des arguments nommés. Les "
"arguments sont :"
#: ../Doc/library/threading.rst:211
msgid ""
"*group* should be ``None``; reserved for future extension when a :class:"
"`ThreadGroup` class is implemented."
msgstr ""
"*group* doit être ``None`` ; cet argument est réservé pour une extension "
"future lorsqu'une classe :class:`ThreadGroup` sera implémentée."
#: ../Doc/library/threading.rst:214
msgid ""
"*target* is the callable object to be invoked by the :meth:`run` method. "
"Defaults to ``None``, meaning nothing is called."
msgstr ""
"*target* est l'objet appelable qui doit être invoqué par la méthode :meth:"
"`run`. La valeur par défaut est ``None``, ce qui signifie que rien n'est "
"appelé."
#: ../Doc/library/threading.rst:217
msgid ""
"*name* is the thread name. By default, a unique name is constructed of the "
"form \"Thread-*N*\" where *N* is a small decimal number."
msgstr ""
"*name* est le nom du fil d'exécution. Par défaut, un nom unique est "
"construit de la forme « Thread*N* » où *N* est un petit nombre décimal."
#: ../Doc/library/threading.rst:220
msgid ""
"*args* is the argument tuple for the target invocation. Defaults to ``()``."
msgstr ""
"*args* est le tuple d'arguments pour l'invocation de l'objet appelable. La "
"valeur par défaut est ``()``."
#: ../Doc/library/threading.rst:222
msgid ""
"*kwargs* is a dictionary of keyword arguments for the target invocation. "
"Defaults to ``{}``."
msgstr ""
"*kwargs* est un dictionnaire d'arguments nommés pour l'invocation de l'objet "
"appelable. La valeur par défaut est ``{}``."
#: ../Doc/library/threading.rst:225
msgid ""
@ -294,6 +423,9 @@ msgid ""
"``None`` (the default), the daemonic property is inherited from the current "
"thread."
msgstr ""
"S'il ne vaut pas ``None``, *daemon* définit explicitement si le fil "
"d'exécution est démonique ou pas. S'il vaut ``None`` (par défaut), la valeur "
"est héritée du fil courant."
#: ../Doc/library/threading.rst:229
msgid ""
@ -301,6 +433,9 @@ msgid ""
"base class constructor (``Thread.__init__()``) before doing anything else to "
"the thread."
msgstr ""
"Si la sous-classe réimplémente le constructeur, elle doit s'assurer "
"d'appeler le constructeur de la classe de base (``Thread.__init__()``) avant "
"de faire autre chose au fil d'exécution."
#: ../Doc/library/threading.rst:233
msgid "Added the *daemon* argument."
@ -308,7 +443,7 @@ msgstr "Ajout de l'argument *daemon*."
#: ../Doc/library/threading.rst:238
msgid "Start the thread's activity."
msgstr ""
msgstr "Lance l'activité du fil d'exécution."
#: ../Doc/library/threading.rst:240
msgid ""
@ -316,16 +451,21 @@ msgid ""
"object's :meth:`~Thread.run` method to be invoked in a separate thread of "
"control."
msgstr ""
"Elle ne doit être appelée qu'une fois par objet de fil. Elle fait en sorte "
"que la méthode :meth:`~Thread.run` de l'objet soit invoquée dans un fil "
"d'exécution."
#: ../Doc/library/threading.rst:244
msgid ""
"This method will raise a :exc:`RuntimeError` if called more than once on the "
"same thread object."
msgstr ""
"Cette méthode lève une :exc:`RuntimeError` si elle est appelée plus d'une "
"fois sur le même objet fil d'exécution."
#: ../Doc/library/threading.rst:249
msgid "Method representing the thread's activity."
msgstr ""
msgstr "Méthode représentant l'activité du fil d'exécution."
#: ../Doc/library/threading.rst:251
msgid ""
@ -334,6 +474,11 @@ msgid ""
"*target* argument, if any, with sequential and keyword arguments taken from "
"the *args* and *kwargs* arguments, respectively."
msgstr ""
"Vous pouvez remplacer cette méthode dans une sous-classe. La méthode "
"standard :meth:`run` invoque l'objet appelable passé au constructeur de "
"l'objet en tant qu'argument *target*, le cas échéant, avec des arguments "
"positionnels et des arguments nommés tirés respectivement des arguments "
"*args* et *kwargs*."
#: ../Doc/library/threading.rst:258
msgid ""
@ -342,6 +487,10 @@ msgid ""
"normally or through an unhandled exception -- or until the optional timeout "
"occurs."
msgstr ""
"Attend que le fil d'exécution se termine. Ceci bloque le fil appelant "
"jusqu'à ce que le fil dont la méthode :meth:`~Thread.join` est appelée se "
"termine soit normalement, soit par une exception non gérée ou jusqu'à ce "
"que le délai optionnel *timeout* soit atteint."
#: ../Doc/library/threading.rst:263
msgid ""
@ -352,16 +501,26 @@ msgid ""
"whether a timeout happened -- if the thread is still alive, the :meth:"
"`~Thread.join` call timed out."
msgstr ""
"Lorsque l'argument *timeout* est présent et ne vaut pas ``None``, il doit "
"être un nombre en virgule flottante spécifiant un délai pour l'opération en "
"secondes (ou fractions de secondes). Comme :meth:`~Thread.join` renvoie "
"toujours ``None``, vous devez appeler :meth:`~Thread.is_alive` après :meth:"
"`~Thread.join` pour déterminer si le délai a expiré si le fil d'exécution "
"est toujours vivant, c'est que l'appel à :meth:`~Thread.join` a expiré."
#: ../Doc/library/threading.rst:270
msgid ""
"When the *timeout* argument is not present or ``None``, the operation will "
"block until the thread terminates."
msgstr ""
"Lorsque l'argument *timeout* n'est pas présent ou vaut ``None``, l'opération "
"se bloque jusqu'à ce que le fil d'exécution se termine."
#: ../Doc/library/threading.rst:273
msgid "A thread can be :meth:`~Thread.join`\\ ed many times."
msgstr ""
"Un fil d'exécution peut être attendu via :meth:`~Thread.join` de nombreuses "
"fois."
#: ../Doc/library/threading.rst:275
msgid ""
@ -370,6 +529,11 @@ msgid ""
"to :meth:`~Thread.join` a thread before it has been started and attempts to "
"do so raise the same exception."
msgstr ""
":meth:`~Thread.join` lève une :exc:`RuntimeError` si une tentative est faite "
"pour attendre le fil d'exécution courant car cela conduirait à un "
"interblocage (*deadlock* en anglais). Attendre via :meth:`~Thread.join` un "
"fil d'exécution avant son lancement est aussi une erreur et, si vous tentez "
"de le faire, lève la même exception."
#: ../Doc/library/threading.rst:282
msgid ""
@ -377,12 +541,17 @@ msgid ""
"Multiple threads may be given the same name. The initial name is set by the "
"constructor."
msgstr ""
"Une chaîne de caractères utilisée à des fins d'identification seulement. "
"Elle n'a pas de sémantique. Plusieurs fils d'exécution peuvent porter le "
"même nom. Le nom initial est défini par le constructeur."
#: ../Doc/library/threading.rst:289
msgid ""
"Old getter/setter API for :attr:`~Thread.name`; use it directly as a "
"property instead."
msgstr ""
"Anciens accesseur et mutateur pour :attr:`~Thread.name` ; utilisez plutôt ce "
"dernier directement."
#: ../Doc/library/threading.rst:294
msgid ""
@ -392,10 +561,15 @@ msgid ""
"another thread is created. The identifier is available even after the "
"thread has exited."
msgstr ""
 L'identificateur de fil d'exécution » de ce fil ou ``None`` si le fil n'a "
"pas été lancé. C'est un entier non nul. Voyez également la fonction :func:"
"`get_ident`. Les identificateurs de fils peuvent être recyclés lorsqu'un fil "
"se termine et qu'un autre fil est créé. L'identifiant est disponible même "
"après que le fil ait terminé."
#: ../Doc/library/threading.rst:302
msgid "Return whether the thread is alive."
msgstr ""
msgstr "Renvoie si le fil d'exécution est vivant ou pas."
#: ../Doc/library/threading.rst:304
msgid ""
@ -403,6 +577,10 @@ msgid ""
"starts until just after the :meth:`~Thread.run` method terminates. The "
"module function :func:`.enumerate` returns a list of all alive threads."
msgstr ""
"Cette méthode renvoie ``True`` depuis juste avant le démarrage de la "
"méthode :meth:`~Thread.run` et jusqu'à juste après la terminaison de la "
"méthode :meth:`~Thread.run`. La fonction :func:`.enumerate` du module "
"renvoie une liste de tous les fils d'exécution vivants."
#: ../Doc/library/threading.rst:310
msgid ""
@ -413,17 +591,27 @@ msgid ""
"therefore all threads created in the main thread default to :attr:`~Thread."
"daemon` = ``False``."
msgstr ""
"Booléen indiquant si ce fil d'exécution est un fil démon (``True``) ou non "
"(``False``). Celui-ci doit être défini avant que :meth:`~Thread.start` ne "
"soit appelé, sinon :exc:`RuntimeError` est levée. Sa valeur initiale est "
"héritée du fil d'exécution créateur ; le fil principal n'est pas un fil "
"démon et donc tous les fils créés dans ce fil principal ont par défaut la "
"valeur :attr:`~Thread.daemon` = ``False``."
#: ../Doc/library/threading.rst:317
msgid ""
"The entire Python program exits when no alive non-daemon threads are left."
msgstr ""
"Le programme Python se termine lorsqu'il ne reste plus de fils d'exécution "
"non-démons vivants."
#: ../Doc/library/threading.rst:322
msgid ""
"Old getter/setter API for :attr:`~Thread.daemon`; use it directly as a "
"property instead."
msgstr ""
"Anciens accesseur et mutateur pour :attr:`~Thread.daemon` ; utilisez plutôt "
"ce dernier directement."
#: ../Doc/library/threading.rst:328
msgid ""
@ -435,6 +623,15 @@ msgid ""
"ProcessPoolExecutor`. However, threading is still an appropriate model if "
"you want to run multiple I/O-bound tasks simultaneously."
msgstr ""
"En CPython, en raison du verrou global de l'interpréteur (:term:`Global "
"Interpreter Lock`), un seul fil d'exécution peut exécuter du code Python à "
"la fois (même si certaines bibliothèques orientées performance peuvent "
"surmonter cette limitation). Si vous voulez que votre application fasse un "
"meilleur usage des ressources de calcul des machines multi-cœurs, nous vous "
"conseillons d'utiliser :mod:`multiprocessing` ou :class:`concurrent.futures."
"ProcessPoolExecutor`. Néanmoins, les fils d'exécutions multiples restent un "
"modèle approprié si vous souhaitez exécuter simultanément plusieurs tâches "
"limitées par les performances des entrées-sorties."
#: ../Doc/library/threading.rst:341
msgid "Lock Objects"