# 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 \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: 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 " "`." msgstr "" "Les objets de transport sont toujours instanciés par une :ref:`boucle " "d'événements asyncio `." #: 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 `." msgstr "" "Les classes de transport ne sont :ref:`pas compatibles avec les fils " "d'exécution multiples `." #: 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() " "` 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() " "` 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() ` 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() ` 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() " "` 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() ` 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() ` " "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() " "` 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() ` and :meth:" "`protocol.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() ` et :" "meth:`protocol.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() ` " "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() " "` 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 `." 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 `." #: 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() ` is called " "at most once. Once ``eof_received()`` is called, ``data_received()`` is not " "called anymore." msgstr "" "Cependant, :meth:`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() `, 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() `, 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 `." msgstr "" "``get_buffer()`` doit renvoyer un objet implémentant le :ref:`protocole " "tampon `." #: 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() ` method." msgstr "" "Voir la documentation de la méthode :meth:`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() " "` 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() " "` 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 ` " "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 ` " "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 " "` 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 " "` 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 ` " "written using high-level APIs." msgstr "" "Voir aussi le :ref:`même exemple ` " "écrit à l'aide d'API de haut niveau."