python-docs-fr/library/asyncio-protocol.po

1359 lines
54 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Copyright (C) 2001-2018, Python Software Foundation
# For licence information, see README file.
#
msgid ""
msgstr ""
"Project-Id-Version: Python 3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-01-15 22:33+0100\n"
"PO-Revision-Date: 2023-06-19 23:01+0200\n"
"Last-Translator: Christophe Nanteuil <christophe.nanteuil@gmail.com>\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"
"X-Generator: Poedit 3.2.2\n"
#: library/asyncio-protocol.rst:9
msgid "Transports and Protocols"
msgstr "Transports et Protocoles"
#: library/asyncio-protocol.rst:12
msgid "Preface"
msgstr "Préface"
#: library/asyncio-protocol.rst:13
msgid ""
"Transports and Protocols are used by the **low-level** event loop APIs such "
"as :meth:`loop.create_connection`. They use callback-based programming "
"style and enable high-performance implementations of network or IPC "
"protocols (e.g. HTTP)."
msgstr ""
"Les transports et les protocoles sont utilisés par les API de boucle "
"d'événements **de bas niveau** telles que :meth:`loop.create_connection`. "
"Ils utilisent un style de programmation basé sur les fonctions de rappel et "
"permettent des implémentations hautes performances de protocoles réseau (par "
"exemple, HTTP) ou de communication inter-processus (*IPC*)."
#: library/asyncio-protocol.rst:18
msgid ""
"Essentially, transports and protocols should only be used in libraries and "
"frameworks and never in high-level asyncio applications."
msgstr ""
"Avant tout, les transports et les protocoles ne doivent être utilisés que "
"dans des bibliothèques et des cadriciels et jamais dans des applications "
"asynchrones de haut niveau."
#: library/asyncio-protocol.rst:22
msgid "This documentation page covers both `Transports`_ and `Protocols`_."
msgstr ""
"Cette page de documentation couvre à la fois `Transports`_ et `Protocoles`_."
#: library/asyncio-protocol.rst:25
msgid "Introduction"
msgstr "Introduction"
#: library/asyncio-protocol.rst:26
msgid ""
"At the highest level, the transport is concerned with *how* bytes are "
"transmitted, while the protocol determines *which* bytes to transmit (and to "
"some extent when)."
msgstr ""
"Au plus haut niveau, le transport concerne *comment* les octets sont "
"transmis, tandis que le protocole détermine *quels* octets transmettre (et "
"dans une certaine mesure quand)."
#: library/asyncio-protocol.rst:30
msgid ""
"A different way of saying the same thing: a transport is an abstraction for "
"a socket (or similar I/O endpoint) while a protocol is an abstraction for an "
"application, from the transport's point of view."
msgstr ""
"Pour l'écrire autrement : un transport est une abstraction pour un "
"connecteur (*socket* ou tout autre point de terminaison d'entrée-sortie) "
"tandis qu'un protocole est une abstraction pour une application, du point de "
"vue du transport."
#: library/asyncio-protocol.rst:35
msgid ""
"Yet another view is the transport and protocol interfaces together define an "
"abstract interface for using network I/O and interprocess I/O."
msgstr ""
"Encore une autre vue est que les interfaces de transport et de protocole "
"définissent ensemble une interface abstraite pour utiliser les entrées-"
"sorties réseau et les entrées-sorties inter-processus."
#: library/asyncio-protocol.rst:39
msgid ""
"There is always a 1:1 relationship between transport and protocol objects: "
"the protocol calls transport methods to send data, while the transport calls "
"protocol methods to pass it data that has been received."
msgstr ""
"Il existe toujours une relation 1:1 entre les objets de transport et de "
"protocole : le protocole appelle les méthodes de transport pour envoyer des "
"données, tandis que le transport appelle les méthodes de protocole pour lui "
"transmettre les données reçues."
#: library/asyncio-protocol.rst:44
msgid ""
"Most of connection oriented event loop methods (such as :meth:`loop."
"create_connection`) usually accept a *protocol_factory* argument used to "
"create a *Protocol* object for an accepted connection, represented by a "
"*Transport* object. Such methods usually return a tuple of ``(transport, "
"protocol)``."
msgstr ""
"La plupart des méthodes de boucles d'événements orientées connexion (telles "
"que :meth:`loop.create_connection`) acceptent généralement un argument "
"*protocol_factory* utilisé pour créer un objet *Protocol* pour une connexion "
"acceptée, représentée par un objet *Transport*. De telles méthodes renvoient "
"généralement un *n*-uplet ``(transport, protocol)``."
#: library/asyncio-protocol.rst:51
msgid "Contents"
msgstr "Sommaire"
#: library/asyncio-protocol.rst:52
msgid "This documentation page contains the following sections:"
msgstr "Cette page de documentation contient les sections suivantes :"
#: library/asyncio-protocol.rst:54
msgid ""
"The `Transports`_ section documents asyncio :class:`BaseTransport`, :class:"
"`ReadTransport`, :class:`WriteTransport`, :class:`Transport`, :class:"
"`DatagramTransport`, and :class:`SubprocessTransport` classes."
msgstr ""
"La section `Transports`_ documente les classes *asyncio* :class:"
"`BaseTransport`, :class:`ReadTransport`, :class:`WriteTransport`, :class:"
"`Transport`, :class:`DatagramTransport` et :class:`SubprocessTransport`."
#: library/asyncio-protocol.rst:59
msgid ""
"The `Protocols`_ section documents asyncio :class:`BaseProtocol`, :class:"
"`Protocol`, :class:`BufferedProtocol`, :class:`DatagramProtocol`, and :class:"
"`SubprocessProtocol` classes."
msgstr ""
"La section `Protocols`_ documente les classes *asyncio* :class:"
"`BaseProtocol`, :class:`Protocol`, :class:`BufferedProtocol`, :class:"
"`DatagramProtocol` et :class:`SubprocessProtocol`."
#: library/asyncio-protocol.rst:63
msgid ""
"The `Examples`_ section showcases how to work with transports, protocols, "
"and low-level event loop APIs."
msgstr ""
"La section `Examples`_ montre comment utiliser les transports, les "
"protocoles et les API de boucle d'événements de bas niveau."
#: library/asyncio-protocol.rst:70
msgid "Transports"
msgstr "Transports"
#: library/asyncio-protocol.rst:72
msgid "**Source code:** :source:`Lib/asyncio/transports.py`"
msgstr "**Code source :** :source:`Lib/asyncio/transports.py`"
#: library/asyncio-protocol.rst:76
msgid ""
"Transports are classes provided by :mod:`asyncio` in order to abstract "
"various kinds of communication channels."
msgstr ""
"Les transports sont des classes fournies par :mod:`asyncio` afin d'abstraire "
"différents types de canaux de communication."
#: library/asyncio-protocol.rst:79
msgid ""
"Transport objects are always instantiated by an :ref:`asyncio event loop "
"<asyncio-event-loop>`."
msgstr ""
"Les objets de transport sont toujours instanciés par une :ref:`boucle "
"d'événements asyncio <asyncio-event-loop>`."
#: library/asyncio-protocol.rst:82
msgid ""
"asyncio implements transports for TCP, UDP, SSL, and subprocess pipes. The "
"methods available on a transport depend on the transport's kind."
msgstr ""
"*asyncio* implémente les transports pour TCP, UDP, SSL et les tubes de sous-"
"processus. Les méthodes disponibles sur un transport dépendent du type de "
"transport."
#: library/asyncio-protocol.rst:85
msgid ""
"The transport classes are :ref:`not thread safe <asyncio-multithreading>`."
msgstr ""
"Les classes de transport ne sont :ref:`pas compatibles avec les fils "
"d'exécution multiples <asyncio-multithreading>`."
#: library/asyncio-protocol.rst:89
msgid "Transports Hierarchy"
msgstr "Hiérarchie des transports"
#: library/asyncio-protocol.rst:93
msgid ""
"Base class for all transports. Contains methods that all asyncio transports "
"share."
msgstr ""
"Classe de base pour tous les transports. Contient des méthodes partagées par "
"tous les transports *asyncio*."
#: library/asyncio-protocol.rst:98
msgid "A base transport for write-only connections."
msgstr "Transport de base pour les connexions en écriture seule."
#: library/asyncio-protocol.rst:100
msgid ""
"Instances of the *WriteTransport* class are returned from the :meth:`loop."
"connect_write_pipe` event loop method and are also used by subprocess-"
"related methods like :meth:`loop.subprocess_exec`."
msgstr ""
"Les instances de la classe *WriteTransport* sont renvoyées par la méthode de "
"boucle d'événements :meth:`loop.connect_write_pipe` et sont également "
"utilisées par les méthodes liées aux sous-processus comme :meth:`loop."
"subprocess_exec`."
#: library/asyncio-protocol.rst:107
msgid "A base transport for read-only connections."
msgstr "Transport de base pour les connexions en lecture seule."
#: library/asyncio-protocol.rst:109
msgid ""
"Instances of the *ReadTransport* class are returned from the :meth:`loop."
"connect_read_pipe` event loop method and are also used by subprocess-related "
"methods like :meth:`loop.subprocess_exec`."
msgstr ""
"Les instances de la classe *ReadTransport* sont renvoyées par la méthode de "
"boucle d'événements :meth:`loop.connect_read_pipe` et sont également "
"utilisées par les méthodes liées aux sous-processus comme :meth:`loop."
"subprocess_exec`."
#: library/asyncio-protocol.rst:116
msgid ""
"Interface representing a bidirectional transport, such as a TCP connection."
msgstr ""
"Interface représentant un transport bidirectionnel, comme une connexion TCP."
#: library/asyncio-protocol.rst:119
msgid ""
"The user does not instantiate a transport directly; they call a utility "
"function, passing it a protocol factory and other information necessary to "
"create the transport and protocol."
msgstr ""
"L'utilisateur n'instancie pas un transport directement ; il appelle une "
"fonction utilitaire, lui transmettant une fabrique de protocoles et d'autres "
"informations nécessaires pour créer le transport et le protocole."
#: library/asyncio-protocol.rst:123
msgid ""
"Instances of the *Transport* class are returned from or used by event loop "
"methods like :meth:`loop.create_connection`, :meth:`loop."
"create_unix_connection`, :meth:`loop.create_server`, :meth:`loop.sendfile`, "
"etc."
msgstr ""
"Les instances de la classe *Transport* sont renvoyées ou utilisées par des "
"méthodes de boucle d'événements comme :meth:`loop.create_connection`, :meth:"
"`loop.create_unix_connection`, :meth:`loop.create_server`, :meth:`loop."
"sendfile`, etc."
#: library/asyncio-protocol.rst:131
msgid "A transport for datagram (UDP) connections."
msgstr "Transport pour les connexions par datagrammes (UDP)."
#: library/asyncio-protocol.rst:133
msgid ""
"Instances of the *DatagramTransport* class are returned from the :meth:`loop."
"create_datagram_endpoint` event loop method."
msgstr ""
"Les instances de la classe *DatagramTransport* sont renvoyées par la méthode "
"de boucle d'événements :meth:`loop.create_datagram_endpoint`."
#: library/asyncio-protocol.rst:139
msgid ""
"An abstraction to represent a connection between a parent and its child OS "
"process."
msgstr ""
"Abstraction pour représenter une connexion entre un parent et son processus "
"enfant au niveau du système d'exploitation."
#: library/asyncio-protocol.rst:142
msgid ""
"Instances of the *SubprocessTransport* class are returned from event loop "
"methods :meth:`loop.subprocess_shell` and :meth:`loop.subprocess_exec`."
msgstr ""
"Les instances de la classe *SubprocessTransport* sont renvoyées par les "
"méthodes de boucle d'événements :meth:`loop.subprocess_shell` et :meth:`loop."
"subprocess_exec`."
#: library/asyncio-protocol.rst:148
msgid "Base Transport"
msgstr "Classe de base des Transports"
#: library/asyncio-protocol.rst:152
msgid "Close the transport."
msgstr "Ferme le transport."
#: library/asyncio-protocol.rst:154
msgid ""
"If the transport has a buffer for outgoing data, buffered data will be "
"flushed asynchronously. No more data will be received. After all buffered "
"data is flushed, the protocol's :meth:`protocol.connection_lost() "
"<BaseProtocol.connection_lost>` method will be called with :const:`None` as "
"its argument. The transport should not be used once it is closed."
msgstr ""
"Si le transport a une mémoire tampon pour les données sortantes, les données "
"mises en mémoire tampon seront vidées de manière asynchrone. Aucune autre "
"donnée ne sera reçue. Une fois que toutes les données mises en mémoire "
"tampon ont été vidées, la méthode :meth:`protocol.connection_lost() "
"<BaseProtocol.connection_lost>` sera appelée avec :const:`None` comme "
"argument. Le transport ne doit pas être utilisé une fois qu'il est fermé."
#: library/asyncio-protocol.rst:164
msgid "Return ``True`` if the transport is closing or is closed."
msgstr "Renvoie ``True`` si le transport se ferme ou est fermé."
#: library/asyncio-protocol.rst:168
msgid "Return information about the transport or underlying resources it uses."
msgstr ""
"Renvoie des informations sur le transport ou les ressources sous-jacentes "
"qu'il utilise."
#: library/asyncio-protocol.rst:171
msgid ""
"*name* is a string representing the piece of transport-specific information "
"to get."
msgstr ""
"*name* est une chaîne représentant l'information spécifique au transport à "
"obtenir."
#: library/asyncio-protocol.rst:174
msgid ""
"*default* is the value to return if the information is not available, or if "
"the transport does not support querying it with the given third-party event "
"loop implementation or on the current platform."
msgstr ""
"*default* est la valeur à renvoyer si les informations ne sont pas "
"disponibles ou si le transport ne prend pas en charge l'implémentation de "
"boucle d'événements tierce donnée ou la plateforme actuelle."
#: library/asyncio-protocol.rst:179
msgid ""
"For example, the following code attempts to get the underlying socket object "
"of the transport::"
msgstr ""
"Par exemple, le code suivant tente d'obtenir l'objet *socket* sous-jacent du "
"transport :"
#: library/asyncio-protocol.rst:186
msgid "Categories of information that can be queried on some transports:"
msgstr ""
"Catégories d'informations pouvant être interrogées sur certains transports :"
#: library/asyncio-protocol.rst:188
msgid "socket:"
msgstr "*socket* :"
#: library/asyncio-protocol.rst:190
msgid ""
"``'peername'``: the remote address to which the socket is connected, result "
"of :meth:`socket.socket.getpeername` (``None`` on error)"
msgstr ""
"``'peername'`` : l'adresse distante à laquelle le *socket* est connecté, "
"résultat de :meth:`socket.socket.getpeername` (``None`` en cas d'erreur)"
#: library/asyncio-protocol.rst:194
msgid "``'socket'``: :class:`socket.socket` instance"
msgstr "``'socket'`` : Instance de :class:`socket.socket`"
#: library/asyncio-protocol.rst:196
msgid ""
"``'sockname'``: the socket's own address, result of :meth:`socket.socket."
"getsockname`"
msgstr ""
"``'sockname'`` : la propre adresse du connecteur, résultat de :meth:`socket."
"socket.getsockname`"
#: library/asyncio-protocol.rst:199
msgid "SSL socket:"
msgstr "Connecteur (*socket*) SSL :"
#: library/asyncio-protocol.rst:201
msgid ""
"``'compression'``: the compression algorithm being used as a string, or "
"``None`` if the connection isn't compressed; result of :meth:`ssl.SSLSocket."
"compression`"
msgstr ""
"``'compression'`` : l'algorithme de compression utilisé (chaîne de "
"caractères), ou ``None`` si la connexion n'est pas compressée ; résultat de :"
"meth:`ssl.SSLSocket.compression`"
#: library/asyncio-protocol.rst:205
msgid ""
"``'cipher'``: a three-value tuple containing the name of the cipher being "
"used, the version of the SSL protocol that defines its use, and the number "
"of secret bits being used; result of :meth:`ssl.SSLSocket.cipher`"
msgstr ""
"``'cipher'`` : un *n*-uplet à trois valeurs contenant le nom du chiffrement "
"utilisé, la version du protocole SSL qui définit son utilisation et le "
"nombre de bits secrets utilisés ; résultat de :meth:`ssl.SSLSocket.cipher`"
#: library/asyncio-protocol.rst:210
msgid ""
"``'peercert'``: peer certificate; result of :meth:`ssl.SSLSocket.getpeercert`"
msgstr ""
"``'peercert'`` : certificat du pair ; résultat de :meth:`ssl.SSLSocket."
"getpeercert`"
#: library/asyncio-protocol.rst:213
msgid "``'sslcontext'``: :class:`ssl.SSLContext` instance"
msgstr "``sslcontext'`` : instance de :class:`ssl.SSLContext`"
#: library/asyncio-protocol.rst:215
msgid ""
"``'ssl_object'``: :class:`ssl.SSLObject` or :class:`ssl.SSLSocket` instance"
msgstr ""
"``'ssl_object'`` : instance de :class:`ssl.SSLObject` ou de :class:`ssl."
"SSLSocket`"
#: library/asyncio-protocol.rst:218
msgid "pipe:"
msgstr "tube :"
#: library/asyncio-protocol.rst:220
msgid "``'pipe'``: pipe object"
msgstr "``'pipe'`` : objet *pipe*"
#: library/asyncio-protocol.rst:222
msgid "subprocess:"
msgstr "sous-processus :"
#: library/asyncio-protocol.rst:224
msgid "``'subprocess'``: :class:`subprocess.Popen` instance"
msgstr "``'sous-processus'`` : instance de :class:`subprocess.Popen`"
#: library/asyncio-protocol.rst:228
msgid "Set a new protocol."
msgstr "Change le protocole."
#: library/asyncio-protocol.rst:230
msgid ""
"Switching protocol should only be done when both protocols are documented to "
"support the switch."
msgstr ""
"La commutation de protocole ne doit être effectuée que lorsque les deux "
"protocoles sont documentés pour prendre en charge la commutation."
#: library/asyncio-protocol.rst:235
msgid "Return the current protocol."
msgstr "Renvoie le protocole courant."
#: library/asyncio-protocol.rst:239
msgid "Read-only Transports"
msgstr "Transports en lecture seule"
#: library/asyncio-protocol.rst:243
msgid "Return ``True`` if the transport is receiving new data."
msgstr "Renvoie ``True`` si le transport reçoit de nouvelles données."
#: library/asyncio-protocol.rst:249
msgid ""
"Pause the receiving end of the transport. No data will be passed to the "
"protocol's :meth:`protocol.data_received() <Protocol.data_received>` method "
"until :meth:`resume_reading` is called."
msgstr ""
"Met en pause l'extrémité de réception du transport. Aucune donnée ne sera "
"transmise à la méthode :meth:`protocol.data_received() <Protocol."
"data_received>` du protocole jusqu'à ce que :meth:`resume_reading` soit "
"appelée."
# suit un :
#: library/asyncio-protocol.rst:253
msgid ""
"The method is idempotent, i.e. it can be called when the transport is "
"already paused or closed."
msgstr ""
"la méthode est idempotente, c'est-à-dire qu'elle peut être appelée lorsque "
"le transport est déjà en pause ou fermé."
#: library/asyncio-protocol.rst:259
msgid ""
"Resume the receiving end. The protocol's :meth:`protocol.data_received() "
"<Protocol.data_received>` method will be called once again if some data is "
"available for reading."
msgstr ""
"Reprend la réception. La méthode :meth:`protocol.data_received() <Protocol."
"data_received>` du protocole sera appelée à nouveau si certaines données "
"sont disponibles pour la lecture."
# suit un :
#: library/asyncio-protocol.rst:263
msgid ""
"The method is idempotent, i.e. it can be called when the transport is "
"already reading."
msgstr ""
"la méthode est idempotente, c'est-à-dire qu'elle peut être appelée alors que "
"le transport est déjà en train de lire."
#: library/asyncio-protocol.rst:269
msgid "Write-only Transports"
msgstr "Transports en lecture-écriture"
#: library/asyncio-protocol.rst:273
msgid ""
"Close the transport immediately, without waiting for pending operations to "
"complete. Buffered data will be lost. No more data will be received. The "
"protocol's :meth:`protocol.connection_lost() <BaseProtocol.connection_lost>` "
"method will eventually be called with :const:`None` as its argument."
msgstr ""
"Ferme le transport immédiatement, sans attendre la fin des opérations en "
"attente. Les données mises en mémoire tampon sont perdues. Aucune autre "
"donnée ne sera reçue. La méthode :meth:`protocol.connection_lost() "
"<BaseProtocol.connection_lost>` du protocole sera éventuellement appelée "
"avec :const:`None` comme argument."
#: library/asyncio-protocol.rst:281
msgid ""
"Return :const:`True` if the transport supports :meth:`~WriteTransport."
"write_eof`, :const:`False` if not."
msgstr ""
"Renvoie :const:`True` si le transport gère :meth:`~WriteTransport."
"write_eof`, :const:`False` sinon."
#: library/asyncio-protocol.rst:286
msgid "Return the current size of the output buffer used by the transport."
msgstr ""
"Renvoie la taille actuelle du tampon de sortie utilisé par le transport."
#: library/asyncio-protocol.rst:290
msgid ""
"Get the *high* and *low* watermarks for write flow control. Return a tuple "
"``(low, high)`` where *low* and *high* are positive number of bytes."
msgstr ""
"Obtient les seuils *high* et *low* pour le contrôle du flux d'écriture. "
"Renvoie un *n*-uplet ``(low, high)`` où *low* et *high* sont des nombres "
"positifs d'octets."
#: library/asyncio-protocol.rst:294
msgid "Use :meth:`set_write_buffer_limits` to set the limits."
msgstr "Utilisez :meth:`set_write_buffer_limits` pour définir les limites."
#: library/asyncio-protocol.rst:300
msgid "Set the *high* and *low* watermarks for write flow control."
msgstr ""
"Définit les seuils *high* et *low* pour le contrôle du flux d'écriture."
#: library/asyncio-protocol.rst:302
msgid ""
"These two values (measured in number of bytes) control when the protocol's :"
"meth:`protocol.pause_writing() <BaseProtocol.pause_writing>` and :meth:"
"`protocol.resume_writing() <BaseProtocol.resume_writing>` methods are "
"called. If specified, the low watermark must be less than or equal to the "
"high watermark. Neither *high* nor *low* can be negative."
msgstr ""
"Ces deux valeurs (mesurées en nombre d'octets) contrôlent quand les "
"méthodes :meth:`protocol.pause_writing() <BaseProtocol.pause_writing>` et :"
"meth:`protocol.resume_writing() <BaseProtocol.resume_writing>` du protocole "
"sont appelées. S'il est spécifié, le seuil bas doit être inférieur ou égal "
"au seuil haut. Ni *high* ni *low* ne peuvent être négatifs."
#: library/asyncio-protocol.rst:310
msgid ""
":meth:`~BaseProtocol.pause_writing` is called when the buffer size becomes "
"greater than or equal to the *high* value. If writing has been paused, :meth:"
"`~BaseProtocol.resume_writing` is called when the buffer size becomes less "
"than or equal to the *low* value."
msgstr ""
":meth:`~BaseProtocol.pause_writing` est appelée lorsque la taille du tampon "
"devient supérieure ou égale à la valeur *high*. Si l'écriture a été "
"interrompue, :meth:`~BaseProtocol.resume_writing` est appelée lorsque la "
"taille du tampon devient inférieure ou égale à la valeur *low*."
#: library/asyncio-protocol.rst:315
msgid ""
"The defaults are implementation-specific. If only the high watermark is "
"given, the low watermark defaults to an implementation-specific value less "
"than or equal to the high watermark. Setting *high* to zero forces *low* to "
"zero as well, and causes :meth:`~BaseProtocol.pause_writing` to be called "
"whenever the buffer becomes non-empty. Setting *low* to zero causes :meth:"
"`~BaseProtocol.resume_writing` to be called only once the buffer is empty. "
"Use of zero for either limit is generally sub-optimal as it reduces "
"opportunities for doing I/O and computation concurrently."
msgstr ""
"Les valeurs par défaut sont spécifiques à l'implémentation. Si seul le seuil "
"supérieur est donné, le seuil bas prend par défaut une valeur spécifique à "
"l'implémentation inférieure ou égale au seuil supérieur. Définir *high* sur "
"zéro force également *low* sur zéro et provoque l'appel de :meth:"
"`~BaseProtocol.pause_writing` chaque fois que le tampon devient non vide. "
"Définir *low* sur zéro entraîne l'appel de :meth:`~BaseProtocol."
"resume_writing` uniquement une fois que le tampon est vide. L'utilisation de "
"zéro pour l'un ou l'autre seuil est généralement sous-optimal car cela "
"réduit les possibilités d'effectuer des entrées-sorties et des calculs "
"simultanément."
#: library/asyncio-protocol.rst:326
msgid "Use :meth:`~WriteTransport.get_write_buffer_limits` to get the limits."
msgstr ""
"Utilisez :meth:`~WriteTransport.get_write_buffer_limits` pour obtenir les "
"limites."
#: library/asyncio-protocol.rst:331
msgid "Write some *data* bytes to the transport."
msgstr "Écrit des octets de *data* sur le transport."
#: library/asyncio-protocol.rst:333 library/asyncio-protocol.rst:362
msgid ""
"This method does not block; it buffers the data and arranges for it to be "
"sent out asynchronously."
msgstr ""
"Cette méthode ne bloque pas ; elle met les données en mémoire tampon et "
"s'arrange pour qu'elles soient envoyées de manière asynchrone."
#: library/asyncio-protocol.rst:338
msgid ""
"Write a list (or any iterable) of data bytes to the transport. This is "
"functionally equivalent to calling :meth:`write` on each element yielded by "
"the iterable, but may be implemented more efficiently."
msgstr ""
"Écrit une liste (ou tout itérable) d'octets de données dans le transport. "
"Ceci est fonctionnellement équivalent à appeler :meth:`write` sur chaque "
"élément produit par l'itérable, mais peut être implémentée plus efficacement."
#: library/asyncio-protocol.rst:345
msgid ""
"Close the write end of the transport after flushing all buffered data. Data "
"may still be received."
msgstr ""
"Ferme l'extrémité d'écriture du transport après avoir vidé toutes les "
"données mises en mémoire tampon. Des données peuvent encore être reçues."
#: library/asyncio-protocol.rst:348
msgid ""
"This method can raise :exc:`NotImplementedError` if the transport (e.g. SSL) "
"doesn't support half-closed connections."
msgstr ""
"Cette méthode peut lever :exc:`NotImplementedError` si le transport (par "
"exemple SSL) ne prend pas en charge les connexions semi-fermées."
#: library/asyncio-protocol.rst:353
msgid "Datagram Transports"
msgstr "Transports par datagrammes"
#: library/asyncio-protocol.rst:357
msgid ""
"Send the *data* bytes to the remote peer given by *addr* (a transport-"
"dependent target address). If *addr* is :const:`None`, the data is sent to "
"the target address given on transport creation."
msgstr ""
"Envoie les octets *data* au pair distant indiqué par *addr* (une adresse "
"cible dépendante du transport). Si *addr* est :const:`None`, les données "
"sont envoyées à l'adresse cible indiquée lors de la création du transport."
#: library/asyncio-protocol.rst:367
msgid ""
"Close the transport immediately, without waiting for pending operations to "
"complete. Buffered data will be lost. No more data will be received. The "
"protocol's :meth:`protocol.connection_lost() <BaseProtocol.connection_lost>` "
"method will eventually be called with :const:`None` as its argument."
msgstr ""
"Ferme le transport immédiatement, sans attendre la fin des opérations en "
"attente. Les données mises en mémoire tampon sont perdues. Aucune autre "
"donnée ne sera reçue. La méthode :meth:`protocol.connection_lost() "
"<BaseProtocol.connection_lost>` du protocole sera éventuellement appelée "
"avec :const:`None` comme argument."
#: library/asyncio-protocol.rst:377
msgid "Subprocess Transports"
msgstr "Transports entre sous-processus"
#: library/asyncio-protocol.rst:381
msgid "Return the subprocess process id as an integer."
msgstr ""
"Renvoie l'identifiant du sous processus sous la forme d'un nombre entier."
#: library/asyncio-protocol.rst:385
msgid ""
"Return the transport for the communication pipe corresponding to the integer "
"file descriptor *fd*:"
msgstr ""
"Renvoie le transport pour le canal de communication correspondant au "
"descripteur de fichier *fd* donné sous forme d'un entier :"
#: library/asyncio-protocol.rst:388
msgid ""
"``0``: readable streaming transport of the standard input (*stdin*), or :"
"const:`None` if the subprocess was not created with ``stdin=PIPE``"
msgstr ""
"``0`` : transport de flux en lecture de l'entrée standard (*stdin*), ou :"
"const:`None` si le sous-processus n'a pas été créé avec ``stdin=PIPE``"
#: library/asyncio-protocol.rst:390
msgid ""
"``1``: writable streaming transport of the standard output (*stdout*), or :"
"const:`None` if the subprocess was not created with ``stdout=PIPE``"
msgstr ""
"``1`` : transport de flux en écriture de la sortie standard (*stdout*), ou :"
"const:`None` si le sous-processus n'a pas été créé avec ``stdout=PIPE``"
#: library/asyncio-protocol.rst:392
msgid ""
"``2``: writable streaming transport of the standard error (*stderr*), or :"
"const:`None` if the subprocess was not created with ``stderr=PIPE``"
msgstr ""
"``2`` : transport de flux en écriture de l'erreur standard (*stderr*), ou :"
"const:`None` si le sous-processus n'a pas été créé avec ``stderr=PIPE``"
#: library/asyncio-protocol.rst:394
msgid "other *fd*: :const:`None`"
msgstr "autre *fd* : :const:`None`"
#: library/asyncio-protocol.rst:398
msgid ""
"Return the subprocess return code as an integer or :const:`None` if it "
"hasn't returned, which is similar to the :attr:`subprocess.Popen.returncode` "
"attribute."
msgstr ""
"Renvoie le code de retour du sous-processus sous la forme d'un entier ou :"
"const:`None` s'il n'a pas été renvoyé, ce qui est similaire à l'attribut :"
"attr:`subprocess.Popen.returncode`."
#: library/asyncio-protocol.rst:404
msgid "Kill the subprocess."
msgstr "Tue le sous-processus."
#: library/asyncio-protocol.rst:406
msgid ""
"On POSIX systems, the function sends SIGKILL to the subprocess. On Windows, "
"this method is an alias for :meth:`terminate`."
msgstr ""
"Sur les systèmes POSIX, la fonction envoie SIGKILL au sous-processus. Sous "
"Windows, cette méthode est un alias pour :meth:`terminate`."
#: library/asyncio-protocol.rst:409
msgid "See also :meth:`subprocess.Popen.kill`."
msgstr "Voir aussi :meth:`subprocess.Popen.kill`."
#: library/asyncio-protocol.rst:413
msgid ""
"Send the *signal* number to the subprocess, as in :meth:`subprocess.Popen."
"send_signal`."
msgstr ""
"Envoie le numéro de *signal* au sous-processus, comme dans :meth:`subprocess."
"Popen.send_signal`."
#: library/asyncio-protocol.rst:418
msgid "Stop the subprocess."
msgstr "Termine le sous-processus."
#: library/asyncio-protocol.rst:420
msgid ""
"On POSIX systems, this method sends SIGTERM to the subprocess. On Windows, "
"the Windows API function TerminateProcess() is called to stop the subprocess."
msgstr ""
"Sur les systèmes POSIX, cette méthode envoie SIGTERM au sous-processus. Sous "
"Windows, la fonction API Windows *TerminateProcess()* est appelée pour "
"arrêter le sous-processus."
#: library/asyncio-protocol.rst:424
msgid "See also :meth:`subprocess.Popen.terminate`."
msgstr "Voir aussi :meth:`subprocess.Popen.terminate`."
#: library/asyncio-protocol.rst:428
msgid "Kill the subprocess by calling the :meth:`kill` method."
msgstr "Tue le sous-processus en appelant la méthode :meth:`kill`."
#: library/asyncio-protocol.rst:430
msgid ""
"If the subprocess hasn't returned yet, and close transports of *stdin*, "
"*stdout*, and *stderr* pipes."
msgstr ""
"Si le sous-processus n'est pas encore terminé, ferme les transports des "
"tubes *stdin*, *stdout* et *stderr*."
#: library/asyncio-protocol.rst:437
msgid "Protocols"
msgstr "Protocoles"
#: library/asyncio-protocol.rst:439
msgid "**Source code:** :source:`Lib/asyncio/protocols.py`"
msgstr "**Code source :** :source:`Lib/asyncio/protocols.py`"
#: library/asyncio-protocol.rst:443
msgid ""
"asyncio provides a set of abstract base classes that should be used to "
"implement network protocols. Those classes are meant to be used together "
"with :ref:`transports <asyncio-transport>`."
msgstr ""
"*asyncio* fournit un ensemble de classes mères abstraites qui doivent être "
"utilisées pour implémenter des protocoles réseau. Ces classes sont destinées "
"à être utilisées avec les :ref:`transports <asyncio-transport>`."
#: library/asyncio-protocol.rst:447
msgid ""
"Subclasses of abstract base protocol classes may implement some or all "
"methods. All these methods are callbacks: they are called by transports on "
"certain events, for example when some data is received. A base protocol "
"method should be called by the corresponding transport."
msgstr ""
"Les sous-classes des classes mères abstraites de protocole peuvent "
"implémenter certaines ou toutes les méthodes. Toutes ces méthodes sont des "
"rappels : elles sont appelées par des transports sur certains événements, "
"par exemple lors de la réception de certaines données. Une méthode de "
"protocole de base doit être appelée par le transport correspondant."
#: library/asyncio-protocol.rst:454
msgid "Base Protocols"
msgstr "Protocoles de base"
#: library/asyncio-protocol.rst:458
msgid "Base protocol with methods that all protocols share."
msgstr "Protocole de base avec des méthodes partagées par tous les protocoles."
#: library/asyncio-protocol.rst:462
msgid ""
"The base class for implementing streaming protocols (TCP, Unix sockets, etc)."
msgstr ""
"Classe mère pour l'implémentation des protocoles de streaming (TCP, sockets "
"Unix, etc.)."
#: library/asyncio-protocol.rst:467
msgid ""
"A base class for implementing streaming protocols with manual control of the "
"receive buffer."
msgstr ""
"Classe mère pour implémenter des protocoles de streaming avec contrôle "
"manuel du tampon de réception."
#: library/asyncio-protocol.rst:472
msgid "The base class for implementing datagram (UDP) protocols."
msgstr ""
"Classe mère pour l'implémentation des protocoles par datagrammes (UDP)."
#: library/asyncio-protocol.rst:476
msgid ""
"The base class for implementing protocols communicating with child processes "
"(unidirectional pipes)."
msgstr ""
"Classe mère pour implémenter des protocoles communiquant avec des processus "
"enfants (canaux unidirectionnels)."
#: library/asyncio-protocol.rst:481
msgid "Base Protocol"
msgstr "Protocoles de base"
#: library/asyncio-protocol.rst:483
msgid "All asyncio protocols can implement Base Protocol callbacks."
msgstr ""
"Tous les protocoles asynchrones peuvent implémenter des rappels pour les "
"protocoles de base."
#: library/asyncio-protocol.rst:486
msgid "Connection Callbacks"
msgstr "Rappels pour les connexions"
#: library/asyncio-protocol.rst:487
msgid ""
"Connection callbacks are called on all protocols, exactly once per a "
"successful connection. All other protocol callbacks can only be called "
"between those two methods."
msgstr ""
"Les méthodes de rappel pour les connexions concernent tous les protocoles, "
"exactement une fois par connexion réussie. Tous les autres rappels de "
"protocole ne peuvent être appelés qu'entre ces deux méthodes."
#: library/asyncio-protocol.rst:493
msgid "Called when a connection is made."
msgstr "Appelée lorsqu'une connexion est établie."
#: library/asyncio-protocol.rst:495
msgid ""
"The *transport* argument is the transport representing the connection. The "
"protocol is responsible for storing the reference to its transport."
msgstr ""
"L'argument *transport* est le transport représentant la connexion. Le "
"protocole est chargé de stocker la référence à son transport."
#: library/asyncio-protocol.rst:501
msgid "Called when the connection is lost or closed."
msgstr "Appelée lorsqu'une connexion est perdue ou fermée."
#: library/asyncio-protocol.rst:503
msgid ""
"The argument is either an exception object or :const:`None`. The latter "
"means a regular EOF is received, or the connection was aborted or closed by "
"this side of the connection."
msgstr ""
"L'argument est soit un objet exception soit :const:`None`. Ce dernier "
"signifie qu'un EOF régulier est reçu, ou que la connexion a été interrompue "
"ou fermée par ce côté de la connexion."
#: library/asyncio-protocol.rst:509
msgid "Flow Control Callbacks"
msgstr "Rappels pour le contrôle de flux"
#: library/asyncio-protocol.rst:510
msgid ""
"Flow control callbacks can be called by transports to pause or resume "
"writing performed by the protocol."
msgstr ""
"Les méthodes de rappel pour le contrôle de flux concernent les transports et "
"sont utilisés pour suspendre ou reprendre l'écriture effectuée par le "
"protocole."
#: library/asyncio-protocol.rst:513
msgid ""
"See the documentation of the :meth:`~WriteTransport.set_write_buffer_limits` "
"method for more details."
msgstr ""
"Voir la documentation de la méthode :meth:`~WriteTransport."
"set_write_buffer_limits` pour plus de détails."
#: library/asyncio-protocol.rst:518
msgid "Called when the transport's buffer goes over the high watermark."
msgstr ""
"Appelée lorsque la mémoire tampon du transport dépasse la limite supérieure."
#: library/asyncio-protocol.rst:522
msgid "Called when the transport's buffer drains below the low watermark."
msgstr ""
"Appelée lorsque la mémoire tampon du transport passe sous le seuil bas."
#: library/asyncio-protocol.rst:524
msgid ""
"If the buffer size equals the high watermark, :meth:`~BaseProtocol."
"pause_writing` is not called: the buffer size must go strictly over."
msgstr ""
"Si la taille du tampon est égale au seuil haut, :meth:`~BaseProtocol."
"pause_writing` n'est pas appelée : la taille du tampon doit être strictement "
"supérieure."
#: library/asyncio-protocol.rst:528
msgid ""
"Conversely, :meth:`~BaseProtocol.resume_writing` is called when the buffer "
"size is equal or lower than the low watermark. These end conditions are "
"important to ensure that things go as expected when either mark is zero."
msgstr ""
"Inversement, :meth:`~BaseProtocol.resume_writing` est appelée lorsque la "
"taille du tampon est égale ou inférieure au seuil bas. Ces conditions de fin "
"sont importantes pour s'assurer que les choses se déroulent comme prévu "
"lorsque l'un ou l'autre seuil est à zéro."
#: library/asyncio-protocol.rst:535
msgid "Streaming Protocols"
msgstr "Protocoles connectés"
#: library/asyncio-protocol.rst:537
msgid ""
"Event methods, such as :meth:`loop.create_server`, :meth:`loop."
"create_unix_server`, :meth:`loop.create_connection`, :meth:`loop."
"create_unix_connection`, :meth:`loop.connect_accepted_socket`, :meth:`loop."
"connect_read_pipe`, and :meth:`loop.connect_write_pipe` accept factories "
"that return streaming protocols."
msgstr ""
"Les méthodes d'événement, telles que :meth:`loop.create_server`, :meth:`loop."
"create_unix_server`, :meth:`loop.create_connection`, :meth:`loop."
"create_unix_connection`, :meth:`loop.connect_accepted_socket`, :meth:`loop."
"connect_read_pipe` et :meth:`loop.connect_write_pipe` acceptent les "
"fabriques qui renvoient des protocoles connectés."
#: library/asyncio-protocol.rst:545
msgid ""
"Called when some data is received. *data* is a non-empty bytes object "
"containing the incoming data."
msgstr ""
"Appelée lorsque certaines données sont reçues. *data* est un objet bytes non "
"vide contenant les données entrantes."
#: library/asyncio-protocol.rst:548
msgid ""
"Whether the data is buffered, chunked or reassembled depends on the "
"transport. In general, you shouldn't rely on specific semantics and instead "
"make your parsing generic and flexible. However, data is always received in "
"the correct order."
msgstr ""
"Le fait que les données soient mises en mémoire tampon, fragmentées ou "
"réassemblées dépend du transport. En général, vous ne devez pas vous fier à "
"une sémantique spécifique et plutôt rendre votre analyse générique et "
"flexible. Cependant, les données sont toujours reçues dans le bon ordre."
#: library/asyncio-protocol.rst:553
msgid ""
"The method can be called an arbitrary number of times while a connection is "
"open."
msgstr ""
"La méthode peut être appelée un nombre arbitraire de fois lorsqu'une "
"connexion est ouverte."
#: library/asyncio-protocol.rst:556
msgid ""
"However, :meth:`protocol.eof_received() <Protocol.eof_received>` is called "
"at most once. Once ``eof_received()`` is called, ``data_received()`` is not "
"called anymore."
msgstr ""
"Cependant, :meth:`protocol.eof_received() <Protocol.eof_received>` est "
"appelée au plus une fois. Une fois que ``eof_received()`` est appelée, "
"``data_received()`` n'est plus appelée."
#: library/asyncio-protocol.rst:562
msgid ""
"Called when the other end signals it won't send any more data (for example "
"by calling :meth:`transport.write_eof() <WriteTransport.write_eof>`, if the "
"other end also uses asyncio)."
msgstr ""
"Appelée lorsque l'autre extrémité signale qu'il n'enverra plus de données "
"(par exemple en appelant :meth:`transport.write_eof() <WriteTransport."
"write_eof>`, si l'autre extrémité utilise également *asyncio*)."
#: library/asyncio-protocol.rst:567
msgid ""
"This method may return a false value (including ``None``), in which case the "
"transport will close itself. Conversely, if this method returns a true "
"value, the protocol used determines whether to close the transport. Since "
"the default implementation returns ``None``, it implicitly closes the "
"connection."
msgstr ""
"Cette méthode peut renvoyer une valeur évaluée à faux (y compris ``None``), "
"auquel cas le transport se ferme de lui-même. À l'inverse, si cette méthode "
"renvoie une valeur évaluée à vrai, le protocole utilisé détermine s'il faut "
"fermer le transport. Puisque l'implémentation par défaut renvoie ``None``, "
"elle ferme implicitement la connexion."
#: library/asyncio-protocol.rst:573
msgid ""
"Some transports, including SSL, don't support half-closed connections, in "
"which case returning true from this method will result in the connection "
"being closed."
msgstr ""
"Certains transports, y compris SSL, ne prennent pas en charge les connexions "
"semi-fermées, auquel cas renvoyer *True* à partir de cette méthode entraîne "
"la fermeture de la connexion."
#: library/asyncio-protocol.rst:578 library/asyncio-protocol.rst:636
msgid "State machine:"
msgstr "Machine à états :"
#: library/asyncio-protocol.rst:589
msgid "Buffered Streaming Protocols"
msgstr "Protocoles connectés avec tampon"
#: library/asyncio-protocol.rst:593
msgid ""
"Buffered Protocols can be used with any event loop method that supports "
"`Streaming Protocols`_."
msgstr ""
"Les protocoles avec mise en mémoire tampon peuvent être utilisés avec "
"n'importe quelle méthode de boucle d'événements prenant en charge les "
"`protocoles connectés`_."
#: library/asyncio-protocol.rst:596
msgid ""
"``BufferedProtocol`` implementations allow explicit manual allocation and "
"control of the receive buffer. Event loops can then use the buffer provided "
"by the protocol to avoid unnecessary data copies. This can result in "
"noticeable performance improvement for protocols that receive big amounts of "
"data. Sophisticated protocol implementations can significantly reduce the "
"number of buffer allocations."
msgstr ""
"Les implémentations de ``BufferedProtocol`` permettent une allocation et un "
"contrôle manuels explicites du tampon de réception. Les boucles d'événements "
"peuvent alors utiliser le tampon fourni par le protocole pour éviter les "
"copies de données inutiles. Cela peut entraîner une amélioration notable des "
"performances pour les protocoles qui reçoivent de grandes quantités de "
"données. Des implémentations de protocole sophistiquées peuvent réduire "
"considérablement le nombre d'allocations de mémoire tampon."
#: library/asyncio-protocol.rst:603
msgid ""
"The following callbacks are called on :class:`BufferedProtocol` instances:"
msgstr ""
"Les méthodes de rappel suivantes sont appelées sur les instances :class:"
"`BufferedProtocol` :"
#: library/asyncio-protocol.rst:608
msgid "Called to allocate a new receive buffer."
msgstr "Appelée pour allouer un nouveau tampon de réception."
#: library/asyncio-protocol.rst:610
msgid ""
"*sizehint* is the recommended minimum size for the returned buffer. It is "
"acceptable to return smaller or larger buffers than what *sizehint* "
"suggests. When set to -1, the buffer size can be arbitrary. It is an error "
"to return a buffer with a zero size."
msgstr ""
"*sizehint* est la taille minimale recommandée pour le tampon renvoyé. Il est "
"acceptable de renvoyer des tampons plus petits ou plus grands que ce que "
"suggère *sizehint*. Lorsqu'il est défini à 1, la taille du tampon peut être "
"arbitraire. C'est une erreur de renvoyer un tampon de taille nulle."
#: library/asyncio-protocol.rst:615
msgid ""
"``get_buffer()`` must return an object implementing the :ref:`buffer "
"protocol <bufferobjects>`."
msgstr ""
"``get_buffer()`` doit renvoyer un objet implémentant le :ref:`protocole "
"tampon <bufferobjects>`."
#: library/asyncio-protocol.rst:620
msgid "Called when the buffer was updated with the received data."
msgstr "Appelée lorsque le tampon a été mis à jour avec les données reçues."
#: library/asyncio-protocol.rst:622
msgid "*nbytes* is the total number of bytes that were written to the buffer."
msgstr ""
"*nbytes* est le nombre total d'octets qui ont été écrits dans la mémoire "
"tampon."
#: library/asyncio-protocol.rst:626
msgid ""
"See the documentation of the :meth:`protocol.eof_received() <Protocol."
"eof_received>` method."
msgstr ""
"Voir la documentation de la méthode :meth:`protocol.eof_received() <Protocol."
"eof_received>`."
#: library/asyncio-protocol.rst:630
msgid ""
":meth:`~BufferedProtocol.get_buffer` can be called an arbitrary number of "
"times during a connection. However, :meth:`protocol.eof_received() "
"<Protocol.eof_received>` is called at most once and, if called, :meth:"
"`~BufferedProtocol.get_buffer` and :meth:`~BufferedProtocol.buffer_updated` "
"won't be called after it."
msgstr ""
":meth:`~BufferedProtocol.get_buffer` peut être appelée un nombre arbitraire "
"de fois pendant une connexion. Cependant, :meth:`protocol.eof_received() "
"<Protocol.eof_received>` est appelée au plus une fois et, si elle est "
"appelée, :meth:`~BufferedProtocol.get_buffer` et :meth:`~BufferedProtocol."
"buffer_updated` ne seront pas appelées après."
#: library/asyncio-protocol.rst:649
msgid "Datagram Protocols"
msgstr "Protocoles par datagrammes (non connectés)"
#: library/asyncio-protocol.rst:651
msgid ""
"Datagram Protocol instances should be constructed by protocol factories "
"passed to the :meth:`loop.create_datagram_endpoint` method."
msgstr ""
"Les instances du protocole par datagrammes doivent être construites par des "
"fabriques de protocole transmises à la méthode :meth:`loop."
"create_datagram_endpoint`."
#: library/asyncio-protocol.rst:656
msgid ""
"Called when a datagram is received. *data* is a bytes object containing the "
"incoming data. *addr* is the address of the peer sending the data; the "
"exact format depends on the transport."
msgstr ""
"Appelée lorsqu'un datagramme est reçu. *data* est un objet bytes contenant "
"les données entrantes. *addr* est l'adresse du pair qui envoie les données ; "
"le format exact dépend du transport."
#: library/asyncio-protocol.rst:662
msgid ""
"Called when a previous send or receive operation raises an :class:"
"`OSError`. *exc* is the :class:`OSError` instance."
msgstr ""
"Appelée lorsqu'une opération d'envoi ou de réception précédente lève une :"
"class:`OSError`. *exc* est l'instance :class:`OSError`."
#: library/asyncio-protocol.rst:665
msgid ""
"This method is called in rare conditions, when the transport (e.g. UDP) "
"detects that a datagram could not be delivered to its recipient. In many "
"conditions though, undeliverable datagrams will be silently dropped."
msgstr ""
"Cette méthode est appelée dans de rares cas, lorsque le transport (par "
"exemple UDP) détecte qu'un datagramme n'a pas pu être livré à son "
"destinataire. Cependant, il est courant que les datagrammes qui ne peuvent "
"être acheminés soient supprimés silencieusement."
#: library/asyncio-protocol.rst:672
msgid ""
"On BSD systems (macOS, FreeBSD, etc.) flow control is not supported for "
"datagram protocols, because there is no reliable way to detect send failures "
"caused by writing too many packets."
msgstr ""
"Sur les systèmes BSD (macOS, FreeBSD, etc.), le contrôle de flux n'est pas "
"pris en charge pour les protocoles par datagrammes, car il n'existe aucun "
"moyen fiable de détecter les échecs d'envoi causés par l'écriture d'un trop "
"grand nombre de paquets."
#: library/asyncio-protocol.rst:676
msgid ""
"The socket always appears 'ready' and excess packets are dropped. An :class:"
"`OSError` with ``errno`` set to :const:`errno.ENOBUFS` may or may not be "
"raised; if it is raised, it will be reported to :meth:`DatagramProtocol."
"error_received` but otherwise ignored."
msgstr ""
"Le connecteur apparaît toujours « prêt » et les paquets en excès sont "
"supprimés. Une :class:`OSError` avec ``errno`` définie sur :const:`errno."
"ENOBUFS` peut être levée ou non ; si elle est levée, c'est communiqué à :"
"meth:`DatagramProtocol.error_received` et ignoré dans le cas contraire."
#: library/asyncio-protocol.rst:685
msgid "Subprocess Protocols"
msgstr "Protocoles liés aux sous-processus"
#: library/asyncio-protocol.rst:687
msgid ""
"Subprocess Protocol instances should be constructed by protocol factories "
"passed to the :meth:`loop.subprocess_exec` and :meth:`loop.subprocess_shell` "
"methods."
msgstr ""
"Les instances de protocole de sous-processus doivent être construites par "
"des fabriques de protocole transmises aux méthodes :meth:`loop."
"subprocess_exec` et :meth:`loop.subprocess_shell`."
#: library/asyncio-protocol.rst:693
msgid ""
"Called when the child process writes data into its stdout or stderr pipe."
msgstr ""
"Appelée lorsqu'un processus enfant écrit sur sa sortie d'erreur ou sa sortie "
"standard."
#: library/asyncio-protocol.rst:696
msgid "*fd* is the integer file descriptor of the pipe."
msgstr "*fd* est l'entier représentant le descripteur de fichier du tube."
#: library/asyncio-protocol.rst:698
msgid "*data* is a non-empty bytes object containing the received data."
msgstr "*data* est un objet bytes non vide contenant les données reçues."
#: library/asyncio-protocol.rst:702
msgid ""
"Called when one of the pipes communicating with the child process is closed."
msgstr ""
"Appelé lorsqu'un des tubes de communication avec un sous-processus est fermé."
#: library/asyncio-protocol.rst:705
msgid "*fd* is the integer file descriptor that was closed."
msgstr ""
"*fd* est l'entier représentant le descripteur de fichier qui a été fermé."
#: library/asyncio-protocol.rst:709
msgid "Called when the child process has exited."
msgstr "Appelée lorsqu'un processus enfant se termine."
#: library/asyncio-protocol.rst:713
msgid "Examples"
msgstr "Exemples"
#: library/asyncio-protocol.rst:718
msgid "TCP Echo Server"
msgstr "Serveur *écho* en TCP"
#: library/asyncio-protocol.rst:720
msgid ""
"Create a TCP echo server using the :meth:`loop.create_server` method, send "
"back received data, and close the connection::"
msgstr ""
"Crée un serveur d'écho TCP en utilisant la méthode :meth:`loop."
"create_server`, renvoie les données reçues et ferme la connexion ::"
#: library/asyncio-protocol.rst:761
msgid ""
"The :ref:`TCP echo server using streams <asyncio-tcp-echo-server-streams>` "
"example uses the high-level :func:`asyncio.start_server` function."
msgstr ""
"L'exemple :ref:`asyncio-tcp-echo-server-streams` utilise la fonction de haut "
"niveau :func:`asyncio.start_server`."
#: library/asyncio-protocol.rst:767
msgid "TCP Echo Client"
msgstr "Client *écho* en TCP"
#: library/asyncio-protocol.rst:769
msgid ""
"A TCP echo client using the :meth:`loop.create_connection` method, sends "
"data, and waits until the connection is closed::"
msgstr ""
"Client d'écho TCP utilisant la méthode :meth:`loop.create_connection` envoie "
"des données et attend que la connexion soit fermée ::"
#: library/asyncio-protocol.rst:817
msgid ""
"The :ref:`TCP echo client using streams <asyncio-tcp-echo-client-streams>` "
"example uses the high-level :func:`asyncio.open_connection` function."
msgstr ""
"L'exemple :ref:`asyncio-tcp-echo-client-streams` utilise la fonction de haut "
"niveau :func:`asyncio.open_connection`."
#: library/asyncio-protocol.rst:824
msgid "UDP Echo Server"
msgstr "Serveur *écho* en UDP"
#: library/asyncio-protocol.rst:826
msgid ""
"A UDP echo server, using the :meth:`loop.create_datagram_endpoint` method, "
"sends back received data::"
msgstr ""
"Serveur d'écho UDP, utilisant la méthode :meth:`loop."
"create_datagram_endpoint`, qui renvoie les données reçues ::"
#: library/asyncio-protocol.rst:868
msgid "UDP Echo Client"
msgstr "Client *écho* en UDP"
#: library/asyncio-protocol.rst:870
msgid ""
"A UDP echo client, using the :meth:`loop.create_datagram_endpoint` method, "
"sends data and closes the transport when it receives the answer::"
msgstr ""
"Client d'écho UDP, utilisant la méthode :meth:`loop."
"create_datagram_endpoint`, qui envoie des données et ferme le transport "
"lorsqu'il reçoit la réponse :"
#: library/asyncio-protocol.rst:925
msgid "Connecting Existing Sockets"
msgstr "Connexion de connecteurs existants"
#: library/asyncio-protocol.rst:927
msgid ""
"Wait until a socket receives data using the :meth:`loop.create_connection` "
"method with a protocol::"
msgstr ""
"Attend qu'un connecteur reçoive des données en utilisant la méthode :meth:"
"`loop.create_connection` avec un protocole ::"
#: library/asyncio-protocol.rst:981
msgid ""
"The :ref:`watch a file descriptor for read events "
"<asyncio_example_watch_fd>` example uses the low-level :meth:`loop."
"add_reader` method to register an FD."
msgstr ""
"L'exemple :ref:`asyncio_example_watch_fd` utilise la méthode de bas niveau :"
"meth:`loop.add_reader` pour enregistrer un descripteur de fichier."
#: library/asyncio-protocol.rst:985
msgid ""
"The :ref:`register an open socket to wait for data using streams "
"<asyncio_example_create_connection-streams>` example uses high-level streams "
"created by the :func:`open_connection` function in a coroutine."
msgstr ""
"L'exemple :ref:`asyncio_example_create_connection-streams` utilise des flux "
"de haut niveau créés par la fonction :func:`open_connection` dans une "
"coroutine."
#: library/asyncio-protocol.rst:992
msgid "loop.subprocess_exec() and SubprocessProtocol"
msgstr "*loop.subprocess_exec()* et *SubprocessProtocol*"
#: library/asyncio-protocol.rst:994
msgid ""
"An example of a subprocess protocol used to get the output of a subprocess "
"and to wait for the subprocess exit."
msgstr ""
"Un exemple de protocole de sous-processus utilisé pour obtenir la sortie "
"d'un sous-processus et attendre la sortie du sous-processus."
#: library/asyncio-protocol.rst:997
msgid "The subprocess is created by the :meth:`loop.subprocess_exec` method::"
msgstr ""
"Le sous-processus est créé par la méthode :meth:`loop.subprocess_exec` ::"
#: library/asyncio-protocol.rst:1043
msgid ""
"See also the :ref:`same example <asyncio_example_create_subprocess_exec>` "
"written using high-level APIs."
msgstr ""
"Voir aussi le :ref:`même exemple <asyncio_example_create_subprocess_exec>` "
"écrit à l'aide d'API de haut niveau."