# 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-04-14 13:19+0200\n" "PO-Revision-Date: 2019-06-10 15:50+0200\n" "Last-Translator: Julien Palard \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 2.0.2\n" #: library/asyncio-eventloop.rst:8 msgid "Event Loop" msgstr "Boucle d'évènements" #: library/asyncio-eventloop.rst:10 msgid "" "**Source code:** :source:`Lib/asyncio/events.py`, :source:`Lib/asyncio/" "base_events.py`" msgstr "" #: library/asyncio-eventloop.rst:16 msgid "Preface" msgstr "" #: library/asyncio-eventloop.rst:17 msgid "" "The event loop is the core of every asyncio application. Event loops run " "asynchronous tasks and callbacks, perform network IO operations, and run " "subprocesses." msgstr "" #: library/asyncio-eventloop.rst:21 msgid "" "Application developers should typically use the high-level asyncio " "functions, such as :func:`asyncio.run`, and should rarely need to reference " "the loop object or call its methods. This section is intended mostly for " "authors of lower-level code, libraries, and frameworks, who need finer " "control over the event loop behavior." msgstr "" #: library/asyncio-eventloop.rst:28 msgid "Obtaining the Event Loop" msgstr "Obtenir une boucle d'évènements" #: library/asyncio-eventloop.rst:29 msgid "" "The following low-level functions can be used to get, set, or create an " "event loop:" msgstr "" #: library/asyncio-eventloop.rst:34 msgid "Return the running event loop in the current OS thread." msgstr "" #: library/asyncio-eventloop.rst:36 msgid "Raise a :exc:`RuntimeError` if there is no running event loop." msgstr "" #: library/asyncio-eventloop.rst:38 msgid "This function can only be called from a coroutine or a callback." msgstr "" #: library/asyncio-eventloop.rst:44 #, fuzzy msgid "Get the current event loop." msgstr "Arrête l'exécution de la boucle d'évènements." #: library/asyncio-eventloop.rst:46 msgid "" "When called from a coroutine or a callback (e.g. scheduled with call_soon or " "similar API), this function will always return the running event loop." msgstr "" #: library/asyncio-eventloop.rst:50 msgid "" "If there is no running event loop set, the function will return the result " "of the ``get_event_loop_policy().get_event_loop()`` call." msgstr "" #: library/asyncio-eventloop.rst:53 msgid "" "Because this function has rather complex behavior (especially when custom " "event loop policies are in use), using the :func:`get_running_loop` function " "is preferred to :func:`get_event_loop` in coroutines and callbacks." msgstr "" #: library/asyncio-eventloop.rst:58 msgid "" "As noted above, consider using the higher-level :func:`asyncio.run` " "function, instead of using these lower level functions to manually create " "and close an event loop." msgstr "" #: library/asyncio-eventloop.rst:63 msgid "" "In Python versions 3.10.0--3.10.8 and 3.11.0 this function (and other " "functions which use it implicitly) emitted a :exc:`DeprecationWarning` if " "there was no running event loop, even if the current loop was set on the " "policy. In Python versions 3.10.9, 3.11.1 and 3.12 they emit a :exc:" "`DeprecationWarning` if there is no running event loop and no current loop " "is set. In some future Python release this will become an error." msgstr "" #: library/asyncio-eventloop.rst:74 #, fuzzy msgid "Set *loop* as the current event loop for the current OS thread." msgstr "" "Appelle le gestionnaire d'exception de la boucle d'évènements actuelle." #: library/asyncio-eventloop.rst:78 msgid "Create and return a new event loop object." msgstr "" #: library/asyncio-eventloop.rst:80 msgid "" "Note that the behaviour of :func:`get_event_loop`, :func:`set_event_loop`, " "and :func:`new_event_loop` functions can be altered by :ref:`setting a " "custom event loop policy `." msgstr "" #: library/asyncio-eventloop.rst:86 msgid "Contents" msgstr "Sommaire" #: library/asyncio-eventloop.rst:87 msgid "This documentation page contains the following sections:" msgstr "" #: library/asyncio-eventloop.rst:89 msgid "" "The `Event Loop Methods`_ section is the reference documentation of the " "event loop APIs;" msgstr "" #: library/asyncio-eventloop.rst:92 msgid "" "The `Callback Handles`_ section documents the :class:`Handle` and :class:" "`TimerHandle` instances which are returned from scheduling methods such as :" "meth:`loop.call_soon` and :meth:`loop.call_later`;" msgstr "" #: library/asyncio-eventloop.rst:96 msgid "" "The `Server Objects`_ section documents types returned from event loop " "methods like :meth:`loop.create_server`;" msgstr "" #: library/asyncio-eventloop.rst:99 msgid "" "The `Event Loop Implementations`_ section documents the :class:" "`SelectorEventLoop` and :class:`ProactorEventLoop` classes;" msgstr "" #: library/asyncio-eventloop.rst:102 msgid "" "The `Examples`_ section showcases how to work with some event loop APIs." msgstr "" #: library/asyncio-eventloop.rst:109 msgid "Event Loop Methods" msgstr "Méthodes de la boucle d'évènements" #: library/asyncio-eventloop.rst:111 msgid "Event loops have **low-level** APIs for the following:" msgstr "" #: library/asyncio-eventloop.rst:119 msgid "Running and stopping the loop" msgstr "Démarrer et arrêter une boucle d'évènements" #: library/asyncio-eventloop.rst:123 msgid "Run until the *future* (an instance of :class:`Future`) has completed." msgstr "" "Lance la boucle jusqu'à ce que *future* (une instance de :class:`Future`) " "soit terminée." #: library/asyncio-eventloop.rst:126 msgid "" "If the argument is a :ref:`coroutine object ` it is implicitly " "scheduled to run as a :class:`asyncio.Task`." msgstr "" #: library/asyncio-eventloop.rst:129 msgid "Return the Future's result or raise its exception." msgstr "" #: library/asyncio-eventloop.rst:133 msgid "Run the event loop until :meth:`stop` is called." msgstr "" #: library/asyncio-eventloop.rst:135 msgid "" "If :meth:`stop` is called before :meth:`run_forever()` is called, the loop " "will poll the I/O selector once with a timeout of zero, run all callbacks " "scheduled in response to I/O events (and those that were already scheduled), " "and then exit." msgstr "" #: library/asyncio-eventloop.rst:140 msgid "" "If :meth:`stop` is called while :meth:`run_forever` is running, the loop " "will run the current batch of callbacks and then exit. Note that new " "callbacks scheduled by callbacks will not run in this case; instead, they " "will run the next time :meth:`run_forever` or :meth:`run_until_complete` is " "called." msgstr "" #: library/asyncio-eventloop.rst:148 msgid "Stop the event loop." msgstr "Arrête l'exécution de la boucle d'évènements." #: library/asyncio-eventloop.rst:152 msgid "Return ``True`` if the event loop is currently running." msgstr "Renvoie ``True`` si la boucle d'évènements est démarrée." #: library/asyncio-eventloop.rst:156 msgid "Return ``True`` if the event loop was closed." msgstr "Renvoie ``True`` si la boucle d'évènements est arrêtée." #: library/asyncio-eventloop.rst:160 msgid "Close the event loop." msgstr "Arrête la boucle d'évènements." #: library/asyncio-eventloop.rst:162 msgid "" "The loop must not be running when this function is called. Any pending " "callbacks will be discarded." msgstr "" #: library/asyncio-eventloop.rst:165 msgid "" "This method clears all queues and shuts down the executor, but does not wait " "for the executor to finish." msgstr "" #: library/asyncio-eventloop.rst:168 msgid "" "This method is idempotent and irreversible. No other methods should be " "called after the event loop is closed." msgstr "" #: library/asyncio-eventloop.rst:173 msgid "" "Schedule all currently open :term:`asynchronous generator` objects to close " "with an :meth:`~agen.aclose()` call. After calling this method, the event " "loop will issue a warning if a new asynchronous generator is iterated. This " "should be used to reliably finalize all scheduled asynchronous generators." msgstr "" #: library/asyncio-eventloop.rst:179 msgid "" "Note that there is no need to call this function when :func:`asyncio.run` is " "used." msgstr "" #: library/asyncio-eventloop.rst:182 library/asyncio-eventloop.rst:1216 #: library/asyncio-eventloop.rst:1604 msgid "Example::" msgstr "Exemple ::" #: library/asyncio-eventloop.rst:194 msgid "" "Schedule the closure of the default executor and wait for it to join all of " "the threads in the :class:`~concurrent.futures.ThreadPoolExecutor`. Once " "this method has been called, using the default executor with :meth:`loop." "run_in_executor` will raise a :exc:`RuntimeError`." msgstr "" #: library/asyncio-eventloop.rst:202 msgid "" "Do not call this method when using :func:`asyncio.run`, as the latter " "handles default executor shutdown automatically." msgstr "" #: library/asyncio-eventloop.rst:209 msgid "Scheduling callbacks" msgstr "" #: library/asyncio-eventloop.rst:213 msgid "" "Schedule the *callback* :term:`callback` to be called with *args* arguments " "at the next iteration of the event loop." msgstr "" #: library/asyncio-eventloop.rst:216 msgid "" "Return an instance of :class:`asyncio.Handle`, which can be used later to " "cancel the callback." msgstr "" #: library/asyncio-eventloop.rst:219 msgid "" "Callbacks are called in the order in which they are registered. Each " "callback will be called exactly once." msgstr "" #: library/asyncio-eventloop.rst:222 msgid "" "The optional keyword-only *context* argument specifies a custom :class:" "`contextvars.Context` for the *callback* to run in. Callbacks use the " "current context when no *context* is provided." msgstr "" #: library/asyncio-eventloop.rst:226 msgid "Unlike :meth:`call_soon_threadsafe`, this method is not thread-safe." msgstr "" #: library/asyncio-eventloop.rst:230 msgid "" "A thread-safe variant of :meth:`call_soon`. When scheduling callbacks from " "another thread, this function *must* be used, since :meth:`call_soon` is not " "thread-safe." msgstr "" #: library/asyncio-eventloop.rst:234 msgid "" "Raises :exc:`RuntimeError` if called on a loop that's been closed. This can " "happen on a secondary thread when the main application is shutting down." msgstr "" #: library/asyncio-eventloop.rst:238 msgid "" "See the :ref:`concurrency and multithreading ` " "section of the documentation." msgstr "" "Voir la section :ref:`exécution concurrente et multi-fils d'exécution " "` de la documentation." #: library/asyncio-eventloop.rst:241 library/asyncio-eventloop.rst:291 #: library/asyncio-eventloop.rst:311 msgid "" "The *context* keyword-only parameter was added. See :pep:`567` for more " "details." msgstr "" #: library/asyncio-eventloop.rst:249 msgid "" "Most :mod:`asyncio` scheduling functions don't allow passing keyword " "arguments. To do that, use :func:`functools.partial`::" msgstr "" #: library/asyncio-eventloop.rst:256 msgid "" "Using partial objects is usually more convenient than using lambdas, as " "asyncio can render partial objects better in debug and error messages." msgstr "" #: library/asyncio-eventloop.rst:264 msgid "Scheduling delayed callbacks" msgstr "" #: library/asyncio-eventloop.rst:266 msgid "" "Event loop provides mechanisms to schedule callback functions to be called " "at some point in the future. Event loop uses monotonic clocks to track time." msgstr "" #: library/asyncio-eventloop.rst:273 msgid "" "Schedule *callback* to be called after the given *delay* number of seconds " "(can be either an int or a float)." msgstr "" #: library/asyncio-eventloop.rst:276 library/asyncio-eventloop.rst:308 msgid "" "An instance of :class:`asyncio.TimerHandle` is returned which can be used to " "cancel the callback." msgstr "" #: library/asyncio-eventloop.rst:279 msgid "" "*callback* will be called exactly once. If two callbacks are scheduled for " "exactly the same time, the order in which they are called is undefined." msgstr "" #: library/asyncio-eventloop.rst:283 msgid "" "The optional positional *args* will be passed to the callback when it is " "called. If you want the callback to be called with keyword arguments use :" "func:`functools.partial`." msgstr "" #: library/asyncio-eventloop.rst:287 msgid "" "An optional keyword-only *context* argument allows specifying a custom :" "class:`contextvars.Context` for the *callback* to run in. The current " "context is used when no *context* is provided." msgstr "" #: library/asyncio-eventloop.rst:295 msgid "" "In Python 3.7 and earlier with the default event loop implementation, the " "*delay* could not exceed one day. This has been fixed in Python 3.8." msgstr "" #: library/asyncio-eventloop.rst:302 msgid "" "Schedule *callback* to be called at the given absolute timestamp *when* (an " "int or a float), using the same time reference as :meth:`loop.time`." msgstr "" #: library/asyncio-eventloop.rst:306 msgid "This method's behavior is the same as :meth:`call_later`." msgstr "" #: library/asyncio-eventloop.rst:315 msgid "" "In Python 3.7 and earlier with the default event loop implementation, the " "difference between *when* and the current time could not exceed one day. " "This has been fixed in Python 3.8." msgstr "" #: library/asyncio-eventloop.rst:322 msgid "" "Return the current time, as a :class:`float` value, according to the event " "loop's internal monotonic clock." msgstr "" #: library/asyncio-eventloop.rst:326 msgid "" "In Python 3.7 and earlier timeouts (relative *delay* or absolute *when*) " "should not exceed one day. This has been fixed in Python 3.8." msgstr "" #: library/asyncio-eventloop.rst:332 msgid "The :func:`asyncio.sleep` function." msgstr "La fonction :func:`asyncio.sleep`." #: library/asyncio-eventloop.rst:336 msgid "Creating Futures and Tasks" msgstr "" #: library/asyncio-eventloop.rst:340 msgid "Create an :class:`asyncio.Future` object attached to the event loop." msgstr "" #: library/asyncio-eventloop.rst:342 msgid "" "This is the preferred way to create Futures in asyncio. This lets third-" "party event loops provide alternative implementations of the Future object " "(with better performance or instrumentation)." msgstr "" #: library/asyncio-eventloop.rst:350 msgid "" "Schedule the execution of :ref:`coroutine ` *coro*. Return a :" "class:`Task` object." msgstr "" #: library/asyncio-eventloop.rst:353 msgid "" "Third-party event loops can use their own subclass of :class:`Task` for " "interoperability. In this case, the result type is a subclass of :class:" "`Task`." msgstr "" #: library/asyncio-eventloop.rst:357 msgid "" "If the *name* argument is provided and not ``None``, it is set as the name " "of the task using :meth:`Task.set_name`." msgstr "" #: library/asyncio-eventloop.rst:360 msgid "" "An optional keyword-only *context* argument allows specifying a custom :" "class:`contextvars.Context` for the *coro* to run in. The current context " "copy is created when no *context* is provided." msgstr "" #: library/asyncio-eventloop.rst:364 #, fuzzy msgid "Added the *name* parameter." msgstr "ajout du paramètre ``name``." #: library/asyncio-eventloop.rst:367 #, fuzzy msgid "Added the *context* parameter." msgstr "ajout du paramètre ``name``." #: library/asyncio-eventloop.rst:372 msgid "Set a task factory that will be used by :meth:`loop.create_task`." msgstr "" #: library/asyncio-eventloop.rst:375 msgid "" "If *factory* is ``None`` the default task factory will be set. Otherwise, " "*factory* must be a *callable* with the signature matching ``(loop, coro, " "context=None)``, where *loop* is a reference to the active event loop, and " "*coro* is a coroutine object. The callable must return a :class:`asyncio." "Future`-compatible object." msgstr "" #: library/asyncio-eventloop.rst:383 msgid "Return a task factory or ``None`` if the default one is in use." msgstr "" #: library/asyncio-eventloop.rst:387 msgid "Opening network connections" msgstr "Créer des connexions" #: library/asyncio-eventloop.rst:397 msgid "" "Open a streaming transport connection to a given address specified by *host* " "and *port*." msgstr "" #: library/asyncio-eventloop.rst:400 msgid "" "The socket family can be either :py:data:`~socket.AF_INET` or :py:data:" "`~socket.AF_INET6` depending on *host* (or the *family* argument, if " "provided)." msgstr "" #: library/asyncio-eventloop.rst:404 msgid "The socket type will be :py:data:`~socket.SOCK_STREAM`." msgstr "" #: library/asyncio-eventloop.rst:406 library/asyncio-eventloop.rst:1132 #: library/asyncio-eventloop.rst:1148 msgid "" "*protocol_factory* must be a callable returning an :ref:`asyncio protocol " "` implementation." msgstr "" #: library/asyncio-eventloop.rst:409 msgid "" "This method will try to establish the connection in the background. When " "successful, it returns a ``(transport, protocol)`` pair." msgstr "" #: library/asyncio-eventloop.rst:412 msgid "The chronological synopsis of the underlying operation is as follows:" msgstr "" #: library/asyncio-eventloop.rst:414 msgid "" "The connection is established and a :ref:`transport ` is " "created for it." msgstr "" #: library/asyncio-eventloop.rst:417 msgid "" "*protocol_factory* is called without arguments and is expected to return a :" "ref:`protocol ` instance." msgstr "" #: library/asyncio-eventloop.rst:420 msgid "" "The protocol instance is coupled with the transport by calling its :meth:" "`~BaseProtocol.connection_made` method." msgstr "" #: library/asyncio-eventloop.rst:423 msgid "A ``(transport, protocol)`` tuple is returned on success." msgstr "" #: library/asyncio-eventloop.rst:425 msgid "" "The created transport is an implementation-dependent bidirectional stream." msgstr "" #: library/asyncio-eventloop.rst:428 library/asyncio-eventloop.rst:549 msgid "Other arguments:" msgstr "" #: library/asyncio-eventloop.rst:430 msgid "" "*ssl*: if given and not false, a SSL/TLS transport is created (by default a " "plain TCP transport is created). If *ssl* is a :class:`ssl.SSLContext` " "object, this context is used to create the transport; if *ssl* is :const:" "`True`, a default context returned from :func:`ssl.create_default_context` " "is used." msgstr "" #: library/asyncio-eventloop.rst:436 msgid ":ref:`SSL/TLS security considerations `" msgstr "" #: library/asyncio-eventloop.rst:438 msgid "" "*server_hostname* sets or overrides the hostname that the target server's " "certificate will be matched against. Should only be passed if *ssl* is not " "``None``. By default the value of the *host* argument is used. If *host* " "is empty, there is no default and you must pass a value for " "*server_hostname*. If *server_hostname* is an empty string, hostname " "matching is disabled (which is a serious security risk, allowing for " "potential man-in-the-middle attacks)." msgstr "" #: library/asyncio-eventloop.rst:446 msgid "" "*family*, *proto*, *flags* are the optional address family, protocol and " "flags to be passed through to getaddrinfo() for *host* resolution. If given, " "these should all be integers from the corresponding :mod:`socket` module " "constants." msgstr "" #: library/asyncio-eventloop.rst:451 msgid "" "*happy_eyeballs_delay*, if given, enables Happy Eyeballs for this " "connection. It should be a floating-point number representing the amount of " "time in seconds to wait for a connection attempt to complete, before " "starting the next attempt in parallel. This is the \"Connection Attempt " "Delay\" as defined in :rfc:`8305`. A sensible default value recommended by " "the RFC is ``0.25`` (250 milliseconds)." msgstr "" #: library/asyncio-eventloop.rst:459 msgid "" "*interleave* controls address reordering when a host name resolves to " "multiple IP addresses. If ``0`` or unspecified, no reordering is done, and " "addresses are tried in the order returned by :meth:`getaddrinfo`. If a " "positive integer is specified, the addresses are interleaved by address " "family, and the given integer is interpreted as \"First Address Family " "Count\" as defined in :rfc:`8305`. The default is ``0`` if " "*happy_eyeballs_delay* is not specified, and ``1`` if it is." msgstr "" #: library/asyncio-eventloop.rst:468 msgid "" "*sock*, if given, should be an existing, already connected :class:`socket." "socket` object to be used by the transport. If *sock* is given, none of " "*host*, *port*, *family*, *proto*, *flags*, *happy_eyeballs_delay*, " "*interleave* and *local_addr* should be specified." msgstr "" #: library/asyncio-eventloop.rst:476 library/asyncio-eventloop.rst:580 #: library/asyncio-eventloop.rst:804 msgid "" "The *sock* argument transfers ownership of the socket to the transport " "created. To close the socket, call the transport's :meth:`~asyncio." "BaseTransport.close` method." msgstr "" #: library/asyncio-eventloop.rst:480 msgid "" "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " "the socket locally. The *local_host* and *local_port* are looked up using " "``getaddrinfo()``, similarly to *host* and *port*." msgstr "" #: library/asyncio-eventloop.rst:484 library/asyncio-eventloop.rst:895 msgid "" "*ssl_handshake_timeout* is (for a TLS connection) the time in seconds to " "wait for the TLS handshake to complete before aborting the connection. " "``60.0`` seconds if ``None`` (default)." msgstr "" #: library/asyncio-eventloop.rst:488 library/asyncio-eventloop.rst:721 #: library/asyncio-eventloop.rst:815 library/asyncio-eventloop.rst:899 msgid "" "*ssl_shutdown_timeout* is the time in seconds to wait for the SSL shutdown " "to complete before aborting the connection. ``30.0`` seconds if ``None`` " "(default)." msgstr "" #: library/asyncio-eventloop.rst:494 library/asyncio-eventloop.rst:733 msgid "Added support for SSL/TLS in :class:`ProactorEventLoop`." msgstr "" #: library/asyncio-eventloop.rst:498 msgid "" "The socket option :py:data:`~socket.TCP_NODELAY` is set by default for all " "TCP connections." msgstr "" #: library/asyncio-eventloop.rst:503 library/asyncio-eventloop.rst:825 #, fuzzy msgid "Added the *ssl_handshake_timeout* parameter." msgstr "ajout du paramètre ``name``." #: library/asyncio-eventloop.rst:507 msgid "Added the *happy_eyeballs_delay* and *interleave* parameters." msgstr "" #: library/asyncio-eventloop.rst:509 msgid "" "Happy Eyeballs Algorithm: Success with Dual-Stack Hosts. When a server's " "IPv4 path and protocol are working, but the server's IPv6 path and protocol " "are not working, a dual-stack client application experiences significant " "connection delay compared to an IPv4-only client. This is undesirable " "because it causes the dual-stack client to have a worse user experience. " "This document specifies requirements for algorithms that reduce this user-" "visible delay and provides an algorithm." msgstr "" #: library/asyncio-eventloop.rst:518 msgid "For more information: https://tools.ietf.org/html/rfc6555" msgstr "" #: library/asyncio-eventloop.rst:522 library/asyncio-eventloop.rst:641 #: library/asyncio-eventloop.rst:747 library/asyncio-eventloop.rst:782 #: library/asyncio-eventloop.rst:829 library/asyncio-eventloop.rst:907 #, fuzzy msgid "Added the *ssl_shutdown_timeout* parameter." msgstr "ajout du paramètre ``name``." #: library/asyncio-eventloop.rst:526 msgid "" "The :func:`open_connection` function is a high-level alternative API. It " "returns a pair of (:class:`StreamReader`, :class:`StreamWriter`) that can be " "used directly in async/await code." msgstr "" #: library/asyncio-eventloop.rst:536 msgid "Create a datagram connection." msgstr "Créer une connexion par datagramme" #: library/asyncio-eventloop.rst:538 msgid "" "The socket family can be either :py:data:`~socket.AF_INET`, :py:data:" "`~socket.AF_INET6`, or :py:data:`~socket.AF_UNIX`, depending on *host* (or " "the *family* argument, if provided)." msgstr "" #: library/asyncio-eventloop.rst:542 msgid "The socket type will be :py:data:`~socket.SOCK_DGRAM`." msgstr "" #: library/asyncio-eventloop.rst:544 library/asyncio-eventloop.rst:664 #: library/asyncio-eventloop.rst:796 msgid "" "*protocol_factory* must be a callable returning a :ref:`protocol ` implementation." msgstr "" #: library/asyncio-eventloop.rst:547 library/asyncio-eventloop.rst:623 msgid "A tuple of ``(transport, protocol)`` is returned on success." msgstr "" #: library/asyncio-eventloop.rst:551 msgid "" "*local_addr*, if given, is a ``(local_host, local_port)`` tuple used to bind " "the socket locally. The *local_host* and *local_port* are looked up using :" "meth:`getaddrinfo`." msgstr "" #: library/asyncio-eventloop.rst:555 msgid "" "*remote_addr*, if given, is a ``(remote_host, remote_port)`` tuple used to " "connect the socket to a remote address. The *remote_host* and *remote_port* " "are looked up using :meth:`getaddrinfo`." msgstr "" #: library/asyncio-eventloop.rst:559 msgid "" "*family*, *proto*, *flags* are the optional address family, protocol and " "flags to be passed through to :meth:`getaddrinfo` for *host* resolution. If " "given, these should all be integers from the corresponding :mod:`socket` " "module constants." msgstr "" #: library/asyncio-eventloop.rst:564 msgid "" "*reuse_port* tells the kernel to allow this endpoint to be bound to the same " "port as other existing endpoints are bound to, so long as they all set this " "flag when being created. This option is not supported on Windows and some " "Unixes. If the :py:data:`~socket.SO_REUSEPORT` constant is not defined then " "this capability is unsupported." msgstr "" #: library/asyncio-eventloop.rst:570 msgid "" "*allow_broadcast* tells the kernel to allow this endpoint to send messages " "to the broadcast address." msgstr "" #: library/asyncio-eventloop.rst:573 msgid "" "*sock* can optionally be specified in order to use a preexisting, already " "connected, :class:`socket.socket` object to be used by the transport. If " "specified, *local_addr* and *remote_addr* should be omitted (must be :const:" "`None`)." msgstr "" #: library/asyncio-eventloop.rst:584 msgid "" "See :ref:`UDP echo client protocol ` and :" "ref:`UDP echo server protocol ` examples." msgstr "" #: library/asyncio-eventloop.rst:587 msgid "" "The *family*, *proto*, *flags*, *reuse_address*, *reuse_port*, " "*allow_broadcast*, and *sock* parameters were added." msgstr "" #: library/asyncio-eventloop.rst:591 msgid "" "The *reuse_address* parameter is no longer supported, as using :py:data:" "`~sockets.SO_REUSEADDR` poses a significant security concern for UDP. " "Explicitly passing ``reuse_address=True`` will raise an exception." msgstr "" #: library/asyncio-eventloop.rst:596 msgid "" "When multiple processes with differing UIDs assign sockets to an identical " "UDP socket address with ``SO_REUSEADDR``, incoming packets can become " "randomly distributed among the sockets." msgstr "" #: library/asyncio-eventloop.rst:600 msgid "" "For supported platforms, *reuse_port* can be used as a replacement for " "similar functionality. With *reuse_port*, :py:data:`~sockets.SO_REUSEPORT` " "is used instead, which specifically prevents processes with differing UIDs " "from assigning sockets to the same socket address." msgstr "" #: library/asyncio-eventloop.rst:606 msgid "Added support for Windows." msgstr "Prise en charge sur Windows." #: library/asyncio-eventloop.rst:609 msgid "" "The *reuse_address* parameter, disabled since Python 3.9.0, 3.8.1, 3.7.6 and " "3.6.10, has been entirely removed." msgstr "" #: library/asyncio-eventloop.rst:618 msgid "Create a Unix connection." msgstr "Créer une connexion Unix" #: library/asyncio-eventloop.rst:620 msgid "" "The socket family will be :py:data:`~socket.AF_UNIX`; socket type will be :" "py:data:`~socket.SOCK_STREAM`." msgstr "" #: library/asyncio-eventloop.rst:625 msgid "" "*path* is the name of a Unix domain socket and is required, unless a *sock* " "parameter is specified. Abstract Unix sockets, :class:`str`, :class:" "`bytes`, and :class:`~pathlib.Path` paths are supported." msgstr "" #: library/asyncio-eventloop.rst:630 msgid "" "See the documentation of the :meth:`loop.create_connection` method for " "information about arguments to this method." msgstr "" #: library/asyncio-eventloop.rst:633 library/asyncio-eventloop.rst:773 #: library/asyncio-eventloop.rst:1199 msgid ":ref:`Availability `: Unix." msgstr ":ref:`Disponibilité ` : Unix." #: library/asyncio-eventloop.rst:635 msgid "" "Added the *ssl_handshake_timeout* parameter. The *path* parameter can now be " "a :term:`path-like object`." msgstr "" #: library/asyncio-eventloop.rst:645 msgid "Creating network servers" msgstr "Créer des serveurs" #: library/asyncio-eventloop.rst:657 msgid "" "Create a TCP server (socket type :data:`~socket.SOCK_STREAM`) listening on " "*port* of the *host* address." msgstr "" #: library/asyncio-eventloop.rst:660 msgid "Returns a :class:`Server` object." msgstr "" #: library/asyncio-eventloop.rst:662 #, fuzzy msgid "Arguments:" msgstr "Arguments :" #: library/asyncio-eventloop.rst:667 msgid "" "The *host* parameter can be set to several types which determine where the " "server would be listening:" msgstr "" #: library/asyncio-eventloop.rst:670 msgid "" "If *host* is a string, the TCP server is bound to a single network interface " "specified by *host*." msgstr "" #: library/asyncio-eventloop.rst:673 msgid "" "If *host* is a sequence of strings, the TCP server is bound to all network " "interfaces specified by the sequence." msgstr "" #: library/asyncio-eventloop.rst:676 msgid "" "If *host* is an empty string or ``None``, all interfaces are assumed and a " "list of multiple sockets will be returned (most likely one for IPv4 and " "another one for IPv6)." msgstr "" #: library/asyncio-eventloop.rst:680 msgid "" "The *port* parameter can be set to specify which port the server should " "listen on. If ``0`` or ``None`` (the default), a random unused port will be " "selected (note that if *host* resolves to multiple network interfaces, a " "different random port will be selected for each interface)." msgstr "" #: library/asyncio-eventloop.rst:685 msgid "" "*family* can be set to either :data:`socket.AF_INET` or :data:`~socket." "AF_INET6` to force the socket to use IPv4 or IPv6. If not set, the *family* " "will be determined from host name (defaults to :data:`~socket.AF_UNSPEC`)." msgstr "" #: library/asyncio-eventloop.rst:690 msgid "*flags* is a bitmask for :meth:`getaddrinfo`." msgstr "*flags* est un masque de bits pour :meth:`getaddrinfo`." #: library/asyncio-eventloop.rst:692 msgid "" "*sock* can optionally be specified in order to use a preexisting socket " "object. If specified, *host* and *port* must not be specified." msgstr "" #: library/asyncio-eventloop.rst:697 msgid "" "The *sock* argument transfers ownership of the socket to the server created. " "To close the socket, call the server's :meth:`~asyncio.Server.close` method." msgstr "" #: library/asyncio-eventloop.rst:701 msgid "" "*backlog* is the maximum number of queued connections passed to :meth:" "`~socket.socket.listen` (defaults to 100)." msgstr "" #: library/asyncio-eventloop.rst:704 msgid "" "*ssl* can be set to an :class:`~ssl.SSLContext` instance to enable TLS over " "the accepted connections." msgstr "" #: library/asyncio-eventloop.rst:707 msgid "" "*reuse_address* tells the kernel to reuse a local socket in ``TIME_WAIT`` " "state, without waiting for its natural timeout to expire. If not specified " "will automatically be set to ``True`` on Unix." msgstr "" #: library/asyncio-eventloop.rst:712 msgid "" "*reuse_port* tells the kernel to allow this endpoint to be bound to the same " "port as other existing endpoints are bound to, so long as they all set this " "flag when being created. This option is not supported on Windows." msgstr "" #: library/asyncio-eventloop.rst:717 msgid "" "*ssl_handshake_timeout* is (for a TLS server) the time in seconds to wait " "for the TLS handshake to complete before aborting the connection. ``60.0`` " "seconds if ``None`` (default)." msgstr "" #: library/asyncio-eventloop.rst:725 msgid "" "*start_serving* set to ``True`` (the default) causes the created server to " "start accepting connections immediately. When set to ``False``, the user " "should await on :meth:`Server.start_serving` or :meth:`Server.serve_forever` " "to make the server to start accepting connections." msgstr "" #: library/asyncio-eventloop.rst:737 msgid "The *host* parameter can be a sequence of strings." msgstr "" #: library/asyncio-eventloop.rst:741 msgid "" "Added *ssl_handshake_timeout* and *start_serving* parameters. The socket " "option :py:data:`~socket.TCP_NODELAY` is set by default for all TCP " "connections." msgstr "" #: library/asyncio-eventloop.rst:751 msgid "" "The :func:`start_server` function is a higher-level alternative API that " "returns a pair of :class:`StreamReader` and :class:`StreamWriter` that can " "be used in an async/await code." msgstr "" #: library/asyncio-eventloop.rst:762 msgid "" "Similar to :meth:`loop.create_server` but works with the :py:data:`~socket." "AF_UNIX` socket family." msgstr "" #: library/asyncio-eventloop.rst:765 msgid "" "*path* is the name of a Unix domain socket, and is required, unless a *sock* " "argument is provided. Abstract Unix sockets, :class:`str`, :class:`bytes`, " "and :class:`~pathlib.Path` paths are supported." msgstr "" #: library/asyncio-eventloop.rst:770 msgid "" "See the documentation of the :meth:`loop.create_server` method for " "information about arguments to this method." msgstr "" #: library/asyncio-eventloop.rst:777 msgid "" "Added the *ssl_handshake_timeout* and *start_serving* parameters. The *path* " "parameter can now be a :class:`~pathlib.Path` object." msgstr "" #: library/asyncio-eventloop.rst:789 msgid "Wrap an already accepted connection into a transport/protocol pair." msgstr "" #: library/asyncio-eventloop.rst:791 msgid "" "This method can be used by servers that accept connections outside of " "asyncio but that use asyncio to handle them." msgstr "" #: library/asyncio-eventloop.rst:794 library/asyncio-eventloop.rst:881 msgid "Parameters:" msgstr "Paramètres :" #: library/asyncio-eventloop.rst:799 msgid "" "*sock* is a preexisting socket object returned from :meth:`socket.accept " "`." msgstr "" #: library/asyncio-eventloop.rst:808 msgid "" "*ssl* can be set to an :class:`~ssl.SSLContext` to enable SSL over the " "accepted connections." msgstr "" #: library/asyncio-eventloop.rst:811 msgid "" "*ssl_handshake_timeout* is (for an SSL connection) the time in seconds to " "wait for the SSL handshake to complete before aborting the connection. " "``60.0`` seconds if ``None`` (default)." msgstr "" #: library/asyncio-eventloop.rst:819 msgid "Returns a ``(transport, protocol)`` pair." msgstr "" #: library/asyncio-eventloop.rst:833 msgid "Transferring files" msgstr "" #: library/asyncio-eventloop.rst:838 msgid "" "Send a *file* over a *transport*. Return the total number of bytes sent." msgstr "" #: library/asyncio-eventloop.rst:841 msgid "The method uses high-performance :meth:`os.sendfile` if available." msgstr "" #: library/asyncio-eventloop.rst:843 msgid "*file* must be a regular file object opened in binary mode." msgstr "" #: library/asyncio-eventloop.rst:845 library/asyncio-eventloop.rst:1087 msgid "" "*offset* tells from where to start reading the file. If specified, *count* " "is the total number of bytes to transmit as opposed to sending the file " "until EOF is reached. File position is always updated, even when this method " "raises an error, and :meth:`file.tell() ` can be used to " "obtain the actual number of bytes sent." msgstr "" #: library/asyncio-eventloop.rst:852 msgid "" "*fallback* set to ``True`` makes asyncio to manually read and send the file " "when the platform does not support the sendfile system call (e.g. Windows or " "SSL socket on Unix)." msgstr "" #: library/asyncio-eventloop.rst:856 msgid "" "Raise :exc:`SendfileNotAvailableError` if the system does not support the " "*sendfile* syscall and *fallback* is ``False``." msgstr "" #: library/asyncio-eventloop.rst:863 msgid "TLS Upgrade" msgstr "" #: library/asyncio-eventloop.rst:870 msgid "Upgrade an existing transport-based connection to TLS." msgstr "Convertit une connexion existante en connexion TLS." #: library/asyncio-eventloop.rst:872 msgid "" "Create a TLS coder/decoder instance and insert it between the *transport* " "and the *protocol*. The coder/decoder implements both *transport*-facing " "protocol and *protocol*-facing transport." msgstr "" #: library/asyncio-eventloop.rst:876 msgid "" "Return the created two-interface instance. After *await*, the *protocol* " "must stop using the original *transport* and communicate with the returned " "object only because the coder caches *protocol*-side data and sporadically " "exchanges extra TLS session packets with *transport*." msgstr "" #: library/asyncio-eventloop.rst:883 msgid "" "*transport* and *protocol* instances that methods like :meth:`~loop." "create_server` and :meth:`~loop.create_connection` return." msgstr "" #: library/asyncio-eventloop.rst:887 msgid "*sslcontext*: a configured instance of :class:`~ssl.SSLContext`." msgstr "" #: library/asyncio-eventloop.rst:889 msgid "" "*server_side* pass ``True`` when a server-side connection is being upgraded " "(like the one created by :meth:`~loop.create_server`)." msgstr "" #: library/asyncio-eventloop.rst:892 msgid "" "*server_hostname*: sets or overrides the host name that the target server's " "certificate will be matched against." msgstr "" #: library/asyncio-eventloop.rst:912 msgid "Watching file descriptors" msgstr "Surveiller des descripteurs de fichiers" #: library/asyncio-eventloop.rst:916 msgid "" "Start monitoring the *fd* file descriptor for read availability and invoke " "*callback* with the specified arguments once *fd* is available for reading." msgstr "" #: library/asyncio-eventloop.rst:922 msgid "" "Stop monitoring the *fd* file descriptor for read availability. Returns " "``True`` if *fd* was previously being monitored for reads." msgstr "" #: library/asyncio-eventloop.rst:927 msgid "" "Start monitoring the *fd* file descriptor for write availability and invoke " "*callback* with the specified arguments once *fd* is available for writing." msgstr "" #: library/asyncio-eventloop.rst:931 library/asyncio-eventloop.rst:1186 msgid "" "Use :func:`functools.partial` :ref:`to pass keyword arguments ` to *callback*." msgstr "" #: library/asyncio-eventloop.rst:936 msgid "" "Stop monitoring the *fd* file descriptor for write availability. Returns " "``True`` if *fd* was previously being monitored for writes." msgstr "" #: library/asyncio-eventloop.rst:939 msgid "" "See also :ref:`Platform Support ` section for some " "limitations of these methods." msgstr "" #: library/asyncio-eventloop.rst:944 msgid "Working with socket objects directly" msgstr "" #: library/asyncio-eventloop.rst:946 msgid "" "In general, protocol implementations that use transport-based APIs such as :" "meth:`loop.create_connection` and :meth:`loop.create_server` are faster than " "implementations that work with sockets directly. However, there are some use " "cases when performance is not critical, and working with :class:`~socket." "socket` objects directly is more convenient." msgstr "" #: library/asyncio-eventloop.rst:955 msgid "" "Receive up to *nbytes* from *sock*. Asynchronous version of :meth:`socket." "recv() `." msgstr "" #: library/asyncio-eventloop.rst:958 msgid "Return the received data as a bytes object." msgstr "" #: library/asyncio-eventloop.rst:960 library/asyncio-eventloop.rst:974 #: library/asyncio-eventloop.rst:985 library/asyncio-eventloop.rst:997 #: library/asyncio-eventloop.rst:1012 library/asyncio-eventloop.rst:1027 #: library/asyncio-eventloop.rst:1037 library/asyncio-eventloop.rst:1063 #: library/asyncio-eventloop.rst:1101 msgid "*sock* must be a non-blocking socket." msgstr "Le connecteur *sock* ne doit pas être bloquant." #: library/asyncio-eventloop.rst:962 msgid "" "Even though this method was always documented as a coroutine method, " "releases before Python 3.7 returned a :class:`Future`. Since Python 3.7 this " "is an ``async def`` method." msgstr "" #: library/asyncio-eventloop.rst:969 msgid "" "Receive data from *sock* into the *buf* buffer. Modeled after the blocking :" "meth:`socket.recv_into() ` method." msgstr "" #: library/asyncio-eventloop.rst:972 msgid "Return the number of bytes written to the buffer." msgstr "" #: library/asyncio-eventloop.rst:980 msgid "" "Receive a datagram of up to *bufsize* from *sock*. Asynchronous version of :" "meth:`socket.recvfrom() `." msgstr "" #: library/asyncio-eventloop.rst:983 msgid "Return a tuple of (received data, remote address)." msgstr "" #: library/asyncio-eventloop.rst:991 msgid "" "Receive a datagram of up to *nbytes* from *sock* into *buf*. Asynchronous " "version of :meth:`socket.recvfrom_into() `." msgstr "" #: library/asyncio-eventloop.rst:995 msgid "Return a tuple of (number of bytes received, remote address)." msgstr "" #: library/asyncio-eventloop.rst:1003 msgid "" "Send *data* to the *sock* socket. Asynchronous version of :meth:`socket." "sendall() `." msgstr "" #: library/asyncio-eventloop.rst:1006 msgid "" "This method continues to send to the socket until either all data in *data* " "has been sent or an error occurs. ``None`` is returned on success. On " "error, an exception is raised. Additionally, there is no way to determine " "how much data, if any, was successfully processed by the receiving end of " "the connection." msgstr "" #: library/asyncio-eventloop.rst:1014 library/asyncio-eventloop.rst:1065 msgid "" "Even though the method was always documented as a coroutine method, before " "Python 3.7 it returned a :class:`Future`. Since Python 3.7, this is an " "``async def`` method." msgstr "" #: library/asyncio-eventloop.rst:1021 msgid "" "Send a datagram from *sock* to *address*. Asynchronous version of :meth:" "`socket.sendto() `." msgstr "" #: library/asyncio-eventloop.rst:1025 #, fuzzy msgid "Return the number of bytes sent." msgstr "Active le mode débogage pour la boucle d'évènements." #: library/asyncio-eventloop.rst:1033 msgid "Connect *sock* to a remote socket at *address*." msgstr "" #: library/asyncio-eventloop.rst:1035 msgid "" "Asynchronous version of :meth:`socket.connect() `." msgstr "" #: library/asyncio-eventloop.rst:1039 msgid "" "``address`` no longer needs to be resolved. ``sock_connect`` will try to " "check if the *address* is already resolved by calling :func:`socket." "inet_pton`. If not, :meth:`loop.getaddrinfo` will be used to resolve the " "*address*." msgstr "" #: library/asyncio-eventloop.rst:1048 msgid "" ":meth:`loop.create_connection` and :func:`asyncio.open_connection() " "`." msgstr "" #: library/asyncio-eventloop.rst:1054 msgid "" "Accept a connection. Modeled after the blocking :meth:`socket.accept() " "` method." msgstr "" #: library/asyncio-eventloop.rst:1057 msgid "" "The socket must be bound to an address and listening for connections. The " "return value is a pair ``(conn, address)`` where *conn* is a *new* socket " "object usable to send and receive data on the connection, and *address* is " "the address bound to the socket on the other end of the connection." msgstr "" #: library/asyncio-eventloop.rst:1072 msgid ":meth:`loop.create_server` and :func:`start_server`." msgstr "" #: library/asyncio-eventloop.rst:1077 msgid "" "Send a file using high-performance :mod:`os.sendfile` if possible. Return " "the total number of bytes sent." msgstr "" #: library/asyncio-eventloop.rst:1080 msgid "" "Asynchronous version of :meth:`socket.sendfile() `." msgstr "" #: library/asyncio-eventloop.rst:1082 msgid "" "*sock* must be a non-blocking :const:`socket.SOCK_STREAM` :class:`~socket." "socket`." msgstr "" #: library/asyncio-eventloop.rst:1085 msgid "*file* must be a regular file object open in binary mode." msgstr "" #: library/asyncio-eventloop.rst:1094 msgid "" "*fallback*, when set to ``True``, makes asyncio manually read and send the " "file when the platform does not support the sendfile syscall (e.g. Windows " "or SSL socket on Unix)." msgstr "" #: library/asyncio-eventloop.rst:1098 msgid "" "Raise :exc:`SendfileNotAvailableError` if the system does not support " "*sendfile* syscall and *fallback* is ``False``." msgstr "" #: library/asyncio-eventloop.rst:1107 msgid "DNS" msgstr "" #: library/asyncio-eventloop.rst:1112 msgid "Asynchronous version of :meth:`socket.getaddrinfo`." msgstr "" #: library/asyncio-eventloop.rst:1116 msgid "Asynchronous version of :meth:`socket.getnameinfo`." msgstr "" #: library/asyncio-eventloop.rst:1118 msgid "" "Both *getaddrinfo* and *getnameinfo* methods were always documented to " "return a coroutine, but prior to Python 3.7 they were, in fact, returning :" "class:`asyncio.Future` objects. Starting with Python 3.7 both methods are " "coroutines." msgstr "" #: library/asyncio-eventloop.rst:1126 msgid "Working with pipes" msgstr "" #: library/asyncio-eventloop.rst:1130 msgid "Register the read end of *pipe* in the event loop." msgstr "" "Branche l'extrémité en lecture du tube *pipe* à la boucle d'évènements." #: library/asyncio-eventloop.rst:1135 msgid "*pipe* is a :term:`file-like object `." msgstr "" #: library/asyncio-eventloop.rst:1137 msgid "" "Return pair ``(transport, protocol)``, where *transport* supports the :class:" "`ReadTransport` interface and *protocol* is an object instantiated by the " "*protocol_factory*." msgstr "" #: library/asyncio-eventloop.rst:1141 library/asyncio-eventloop.rst:1157 msgid "" "With :class:`SelectorEventLoop` event loop, the *pipe* is set to non-" "blocking mode." msgstr "" #: library/asyncio-eventloop.rst:1146 msgid "Register the write end of *pipe* in the event loop." msgstr "Branche l'extrémité en écriture de *pipe* à la boucle d'évènements." #: library/asyncio-eventloop.rst:1151 msgid "*pipe* is :term:`file-like object `." msgstr "" #: library/asyncio-eventloop.rst:1153 msgid "" "Return pair ``(transport, protocol)``, where *transport* supports :class:" "`WriteTransport` interface and *protocol* is an object instantiated by the " "*protocol_factory*." msgstr "" #: library/asyncio-eventloop.rst:1162 msgid "" ":class:`SelectorEventLoop` does not support the above methods on Windows. " "Use :class:`ProactorEventLoop` instead for Windows." msgstr "" #: library/asyncio-eventloop.rst:1167 msgid "" "The :meth:`loop.subprocess_exec` and :meth:`loop.subprocess_shell` methods." msgstr "" #: library/asyncio-eventloop.rst:1172 msgid "Unix signals" msgstr "Signaux Unix" #: library/asyncio-eventloop.rst:1176 msgid "Set *callback* as the handler for the *signum* signal." msgstr "" #: library/asyncio-eventloop.rst:1178 msgid "" "The callback will be invoked by *loop*, along with other queued callbacks " "and runnable coroutines of that event loop. Unlike signal handlers " "registered using :func:`signal.signal`, a callback registered with this " "function is allowed to interact with the event loop." msgstr "" #: library/asyncio-eventloop.rst:1183 msgid "" "Raise :exc:`ValueError` if the signal number is invalid or uncatchable. " "Raise :exc:`RuntimeError` if there is a problem setting up the handler." msgstr "" #: library/asyncio-eventloop.rst:1189 msgid "" "Like :func:`signal.signal`, this function must be invoked in the main thread." msgstr "" #: library/asyncio-eventloop.rst:1194 msgid "Remove the handler for the *sig* signal." msgstr "Supprime le gestionnaire du signal *sig*." #: library/asyncio-eventloop.rst:1196 msgid "" "Return ``True`` if the signal handler was removed, or ``False`` if no " "handler was set for the given signal." msgstr "" #: library/asyncio-eventloop.rst:1203 msgid "The :mod:`signal` module." msgstr "Le module :mod:`signal`." #: library/asyncio-eventloop.rst:1207 msgid "Executing code in thread or process pools" msgstr "" #: library/asyncio-eventloop.rst:1211 msgid "Arrange for *func* to be called in the specified executor." msgstr "" #: library/asyncio-eventloop.rst:1213 msgid "" "The *executor* argument should be an :class:`concurrent.futures.Executor` " "instance. The default executor is used if *executor* is ``None``." msgstr "" #: library/asyncio-eventloop.rst:1258 msgid "" "Note that the entry point guard (``if __name__ == '__main__'``) is required " "for option 3 due to the peculiarities of :mod:`multiprocessing`, which is " "used by :class:`~concurrent.futures.ProcessPoolExecutor`. See :ref:`Safe " "importing of main module `." msgstr "" #: library/asyncio-eventloop.rst:1263 msgid "This method returns a :class:`asyncio.Future` object." msgstr "" #: library/asyncio-eventloop.rst:1265 msgid "" "Use :func:`functools.partial` :ref:`to pass keyword arguments ` to *func*." msgstr "" #: library/asyncio-eventloop.rst:1268 msgid "" ":meth:`loop.run_in_executor` no longer configures the ``max_workers`` of the " "thread pool executor it creates, instead leaving it up to the thread pool " "executor (:class:`~concurrent.futures.ThreadPoolExecutor`) to set the " "default." msgstr "" #: library/asyncio-eventloop.rst:1277 msgid "" "Set *executor* as the default executor used by :meth:`run_in_executor`. " "*executor* must be an instance of :class:`~concurrent.futures." "ThreadPoolExecutor`." msgstr "" #: library/asyncio-eventloop.rst:1281 msgid "" "*executor* must be an instance of :class:`~concurrent.futures." "ThreadPoolExecutor`." msgstr "" #: library/asyncio-eventloop.rst:1287 msgid "Error Handling API" msgstr "API de gestion d'erreur" #: library/asyncio-eventloop.rst:1289 msgid "Allows customizing how exceptions are handled in the event loop." msgstr "" #: library/asyncio-eventloop.rst:1293 msgid "Set *handler* as the new event loop exception handler." msgstr "" #: library/asyncio-eventloop.rst:1295 msgid "" "If *handler* is ``None``, the default exception handler will be set. " "Otherwise, *handler* must be a callable with the signature matching ``(loop, " "context)``, where ``loop`` is a reference to the active event loop, and " "``context`` is a ``dict`` object containing the details of the exception " "(see :meth:`call_exception_handler` documentation for details about context)." msgstr "" #: library/asyncio-eventloop.rst:1305 msgid "" "Return the current exception handler, or ``None`` if no custom exception " "handler was set." msgstr "" #: library/asyncio-eventloop.rst:1312 msgid "Default exception handler." msgstr "Gestionnaire d'exception par défaut." #: library/asyncio-eventloop.rst:1314 msgid "" "This is called when an exception occurs and no exception handler is set. " "This can be called by a custom exception handler that wants to defer to the " "default handler behavior." msgstr "" #: library/asyncio-eventloop.rst:1318 msgid "" "*context* parameter has the same meaning as in :meth:" "`call_exception_handler`." msgstr "" #: library/asyncio-eventloop.rst:1323 msgid "Call the current event loop exception handler." msgstr "" "Appelle le gestionnaire d'exception de la boucle d'évènements actuelle." #: library/asyncio-eventloop.rst:1325 msgid "" "*context* is a ``dict`` object containing the following keys (new keys may " "be introduced in future Python versions):" msgstr "" #: library/asyncio-eventloop.rst:1328 msgid "'message': Error message;" msgstr "``message`` : Message d'erreur ;" #: library/asyncio-eventloop.rst:1329 msgid "'exception' (optional): Exception object;" msgstr "``exception`` (optionnel): Un objet exception ;" #: library/asyncio-eventloop.rst:1330 msgid "'future' (optional): :class:`asyncio.Future` instance;" msgstr "" #: library/asyncio-eventloop.rst:1331 msgid "'task' (optional): :class:`asyncio.Task` instance;" msgstr "" #: library/asyncio-eventloop.rst:1332 msgid "'handle' (optional): :class:`asyncio.Handle` instance;" msgstr "" #: library/asyncio-eventloop.rst:1333 msgid "'protocol' (optional): :ref:`Protocol ` instance;" msgstr "" #: library/asyncio-eventloop.rst:1334 msgid "'transport' (optional): :ref:`Transport ` instance;" msgstr "" #: library/asyncio-eventloop.rst:1335 msgid "'socket' (optional): :class:`socket.socket` instance;" msgstr "" #: library/asyncio-eventloop.rst:1337 msgid "'asyncgen' (optional): Asynchronous generator that caused" msgstr "" #: library/asyncio-eventloop.rst:1337 #, fuzzy msgid "the exception." msgstr "Gestionnaire d'exception par défaut." #: library/asyncio-eventloop.rst:1341 msgid "" "This method should not be overloaded in subclassed event loops. For custom " "exception handling, use the :meth:`set_exception_handler()` method." msgstr "" #: library/asyncio-eventloop.rst:1346 msgid "Enabling debug mode" msgstr "Active le mode débogage" #: library/asyncio-eventloop.rst:1350 msgid "Get the debug mode (:class:`bool`) of the event loop." msgstr "" #: library/asyncio-eventloop.rst:1352 msgid "" "The default value is ``True`` if the environment variable :envvar:" "`PYTHONASYNCIODEBUG` is set to a non-empty string, ``False`` otherwise." msgstr "" #: library/asyncio-eventloop.rst:1358 msgid "Set the debug mode of the event loop." msgstr "Active le mode débogage pour la boucle d'évènements." #: library/asyncio-eventloop.rst:1362 msgid "" "The new :ref:`Python Development Mode ` can now also be used to " "enable the debug mode." msgstr "" #: library/asyncio-eventloop.rst:1367 msgid "The :ref:`debug mode of asyncio `." msgstr "" #: library/asyncio-eventloop.rst:1371 msgid "Running Subprocesses" msgstr "" #: library/asyncio-eventloop.rst:1373 msgid "" "Methods described in this subsections are low-level. In regular async/await " "code consider using the high-level :func:`asyncio.create_subprocess_shell` " "and :func:`asyncio.create_subprocess_exec` convenience functions instead." msgstr "" #: library/asyncio-eventloop.rst:1380 msgid "" "On Windows, the default event loop :class:`ProactorEventLoop` supports " "subprocesses, whereas :class:`SelectorEventLoop` does not. See :ref:" "`Subprocess Support on Windows ` for details." msgstr "" #: library/asyncio-eventloop.rst:1389 msgid "" "Create a subprocess from one or more string arguments specified by *args*." msgstr "" #: library/asyncio-eventloop.rst:1392 msgid "*args* must be a list of strings represented by:" msgstr "" #: library/asyncio-eventloop.rst:1394 #, fuzzy msgid ":class:`str`;" msgstr ":class:`str`" #: library/asyncio-eventloop.rst:1395 msgid "" "or :class:`bytes`, encoded to the :ref:`filesystem encoding `." msgstr "" #: library/asyncio-eventloop.rst:1398 msgid "" "The first string specifies the program executable, and the remaining strings " "specify the arguments. Together, string arguments form the ``argv`` of the " "program." msgstr "" #: library/asyncio-eventloop.rst:1402 msgid "" "This is similar to the standard library :class:`subprocess.Popen` class " "called with ``shell=False`` and the list of strings passed as the first " "argument; however, where :class:`~subprocess.Popen` takes a single argument " "which is list of strings, *subprocess_exec* takes multiple string arguments." msgstr "" #: library/asyncio-eventloop.rst:1408 msgid "" "The *protocol_factory* must be a callable returning a subclass of the :class:" "`asyncio.SubprocessProtocol` class." msgstr "" #: library/asyncio-eventloop.rst:1411 msgid "Other parameters:" msgstr "Autres paramètres :" #: library/asyncio-eventloop.rst:1413 msgid "*stdin* can be any of these:" msgstr "" #: library/asyncio-eventloop.rst:1415 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard input stream using :meth:`~loop.connect_write_pipe`" msgstr "" #: library/asyncio-eventloop.rst:1418 library/asyncio-eventloop.rst:1430 #: library/asyncio-eventloop.rst:1442 msgid "" "the :const:`subprocess.PIPE` constant (default) which will create a new pipe " "and connect it," msgstr "" #: library/asyncio-eventloop.rst:1420 library/asyncio-eventloop.rst:1432 #: library/asyncio-eventloop.rst:1444 msgid "" "the value ``None`` which will make the subprocess inherit the file " "descriptor from this process" msgstr "" #: library/asyncio-eventloop.rst:1422 library/asyncio-eventloop.rst:1434 #: library/asyncio-eventloop.rst:1446 msgid "" "the :const:`subprocess.DEVNULL` constant which indicates that the special :" "data:`os.devnull` file will be used" msgstr "" #: library/asyncio-eventloop.rst:1425 msgid "*stdout* can be any of these:" msgstr "" #: library/asyncio-eventloop.rst:1427 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard output stream using :meth:`~loop.connect_write_pipe`" msgstr "" #: library/asyncio-eventloop.rst:1437 msgid "*stderr* can be any of these:" msgstr "" #: library/asyncio-eventloop.rst:1439 msgid "" "a file-like object representing a pipe to be connected to the subprocess's " "standard error stream using :meth:`~loop.connect_write_pipe`" msgstr "" #: library/asyncio-eventloop.rst:1448 msgid "" "the :const:`subprocess.STDOUT` constant which will connect the standard " "error stream to the process' standard output stream" msgstr "" #: library/asyncio-eventloop.rst:1451 msgid "" "All other keyword arguments are passed to :class:`subprocess.Popen` without " "interpretation, except for *bufsize*, *universal_newlines*, *shell*, *text*, " "*encoding* and *errors*, which should not be specified at all." msgstr "" #: library/asyncio-eventloop.rst:1456 msgid "" "The ``asyncio`` subprocess API does not support decoding the streams as " "text. :func:`bytes.decode` can be used to convert the bytes returned from " "the stream to text." msgstr "" #: library/asyncio-eventloop.rst:1460 msgid "" "See the constructor of the :class:`subprocess.Popen` class for documentation " "on other arguments." msgstr "" #: library/asyncio-eventloop.rst:1463 msgid "" "Returns a pair of ``(transport, protocol)``, where *transport* conforms to " "the :class:`asyncio.SubprocessTransport` base class and *protocol* is an " "object instantiated by the *protocol_factory*." msgstr "" #: library/asyncio-eventloop.rst:1471 msgid "" "Create a subprocess from *cmd*, which can be a :class:`str` or a :class:" "`bytes` string encoded to the :ref:`filesystem encoding `, using the platform's \"shell\" syntax." msgstr "" #: library/asyncio-eventloop.rst:1476 msgid "" "This is similar to the standard library :class:`subprocess.Popen` class " "called with ``shell=True``." msgstr "" #: library/asyncio-eventloop.rst:1479 msgid "" "The *protocol_factory* must be a callable returning a subclass of the :class:" "`SubprocessProtocol` class." msgstr "" #: library/asyncio-eventloop.rst:1482 msgid "" "See :meth:`~loop.subprocess_exec` for more details about the remaining " "arguments." msgstr "" #: library/asyncio-eventloop.rst:1485 msgid "" "Returns a pair of ``(transport, protocol)``, where *transport* conforms to " "the :class:`SubprocessTransport` base class and *protocol* is an object " "instantiated by the *protocol_factory*." msgstr "" #: library/asyncio-eventloop.rst:1490 msgid "" "It is the application's responsibility to ensure that all whitespace and " "special characters are quoted appropriately to avoid `shell injection " "`_ " "vulnerabilities. The :func:`shlex.quote` function can be used to properly " "escape whitespace and special characters in strings that are going to be " "used to construct shell commands." msgstr "" #: library/asyncio-eventloop.rst:1499 msgid "Callback Handles" msgstr "" #: library/asyncio-eventloop.rst:1503 msgid "" "A callback wrapper object returned by :meth:`loop.call_soon`, :meth:`loop." "call_soon_threadsafe`." msgstr "" #: library/asyncio-eventloop.rst:1508 msgid "" "Cancel the callback. If the callback has already been canceled or executed, " "this method has no effect." msgstr "" #: library/asyncio-eventloop.rst:1513 msgid "Return ``True`` if the callback was cancelled." msgstr "Renvoie ``True`` si la fonction de rappel à été annulé." #: library/asyncio-eventloop.rst:1519 msgid "" "A callback wrapper object returned by :meth:`loop.call_later`, and :meth:" "`loop.call_at`." msgstr "" #: library/asyncio-eventloop.rst:1522 msgid "This class is a subclass of :class:`Handle`." msgstr "" #: library/asyncio-eventloop.rst:1526 msgid "Return a scheduled callback time as :class:`float` seconds." msgstr "" #: library/asyncio-eventloop.rst:1528 msgid "" "The time is an absolute timestamp, using the same time reference as :meth:" "`loop.time`." msgstr "" #: library/asyncio-eventloop.rst:1535 msgid "Server Objects" msgstr "Objets Serveur" #: library/asyncio-eventloop.rst:1537 msgid "" "Server objects are created by :meth:`loop.create_server`, :meth:`loop." "create_unix_server`, :func:`start_server`, and :func:`start_unix_server` " "functions." msgstr "" #: library/asyncio-eventloop.rst:1541 msgid "Do not instantiate the class directly." msgstr "" #: library/asyncio-eventloop.rst:1545 msgid "" "*Server* objects are asynchronous context managers. When used in an ``async " "with`` statement, it's guaranteed that the Server object is closed and not " "accepting new connections when the ``async with`` statement is completed::" msgstr "" #: library/asyncio-eventloop.rst:1558 msgid "Server object is an asynchronous context manager since Python 3.7." msgstr "" #: library/asyncio-eventloop.rst:1563 msgid "" "Stop serving: close listening sockets and set the :attr:`sockets` attribute " "to ``None``." msgstr "" #: library/asyncio-eventloop.rst:1566 msgid "" "The sockets that represent existing incoming client connections are left " "open." msgstr "" #: library/asyncio-eventloop.rst:1569 msgid "" "The server is closed asynchronously, use the :meth:`wait_closed` coroutine " "to wait until the server is closed." msgstr "" #: library/asyncio-eventloop.rst:1574 msgid "Return the event loop associated with the server object." msgstr "" #: library/asyncio-eventloop.rst:1580 msgid "Start accepting connections." msgstr "Commence à accepter les connexions." #: library/asyncio-eventloop.rst:1582 msgid "" "This method is idempotent, so it can be called when the server is already " "serving." msgstr "" #: library/asyncio-eventloop.rst:1585 msgid "" "The *start_serving* keyword-only parameter to :meth:`loop.create_server` " "and :meth:`asyncio.start_server` allows creating a Server object that is not " "accepting connections initially. In this case ``Server.start_serving()``, " "or :meth:`Server.serve_forever` can be used to make the Server start " "accepting connections." msgstr "" #: library/asyncio-eventloop.rst:1596 msgid "" "Start accepting connections until the coroutine is cancelled. Cancellation " "of ``serve_forever`` task causes the server to be closed." msgstr "" #: library/asyncio-eventloop.rst:1600 msgid "" "This method can be called if the server is already accepting connections. " "Only one ``serve_forever`` task can exist per one *Server* object." msgstr "" #: library/asyncio-eventloop.rst:1622 msgid "Return ``True`` if the server is accepting new connections." msgstr "Donne ``True`` si le serveur accepte de nouvelles connexions." #: library/asyncio-eventloop.rst:1628 msgid "Wait until the :meth:`close` method completes." msgstr "Attends que la méthode :meth:`close` se termine." #: library/asyncio-eventloop.rst:1632 msgid "List of :class:`socket.socket` objects the server is listening on." msgstr "" #: library/asyncio-eventloop.rst:1634 msgid "" "Prior to Python 3.7 ``Server.sockets`` used to return an internal list of " "server sockets directly. In 3.7 a copy of that list is returned." msgstr "" #: library/asyncio-eventloop.rst:1644 msgid "Event Loop Implementations" msgstr "Implémentations de boucle d'évènements" #: library/asyncio-eventloop.rst:1646 msgid "" "asyncio ships with two different event loop implementations: :class:" "`SelectorEventLoop` and :class:`ProactorEventLoop`." msgstr "" #: library/asyncio-eventloop.rst:1649 msgid "" "By default asyncio is configured to use :class:`SelectorEventLoop` on Unix " "and :class:`ProactorEventLoop` on Windows." msgstr "" #: library/asyncio-eventloop.rst:1655 msgid "An event loop based on the :mod:`selectors` module." msgstr "" #: library/asyncio-eventloop.rst:1657 msgid "" "Uses the most efficient *selector* available for the given platform. It is " "also possible to manually configure the exact selector implementation to be " "used::" msgstr "" #: library/asyncio-eventloop.rst:1672 msgid ":ref:`Availability `: Unix, Windows." msgstr ":ref:`Disponibilité ` : Unix, Windows." #: library/asyncio-eventloop.rst:1677 msgid "An event loop for Windows that uses \"I/O Completion Ports\" (IOCP)." msgstr "" #: library/asyncio-eventloop.rst:1679 msgid ":ref:`Availability `: Windows." msgstr ":ref:`Disponibilité ` : Windows." #: library/asyncio-eventloop.rst:1683 msgid "" "`MSDN documentation on I/O Completion Ports `_." msgstr "" #: library/asyncio-eventloop.rst:1689 msgid "Abstract base class for asyncio-compliant event loops." msgstr "" #: library/asyncio-eventloop.rst:1691 msgid "" "The :ref:`asyncio-event-loop-methods` section lists all methods that an " "alternative implementation of ``AbstractEventLoop`` should have defined." msgstr "" #: library/asyncio-eventloop.rst:1697 msgid "Examples" msgstr "Exemples" #: library/asyncio-eventloop.rst:1699 msgid "" "Note that all examples in this section **purposefully** show how to use the " "low-level event loop APIs, such as :meth:`loop.run_forever` and :meth:`loop." "call_soon`. Modern asyncio applications rarely need to be written this way; " "consider using the high-level functions like :func:`asyncio.run`." msgstr "" #: library/asyncio-eventloop.rst:1709 msgid "Hello World with call_soon()" msgstr "\"Hello World\" avec ``call_soon()``" #: library/asyncio-eventloop.rst:1711 msgid "" "An example using the :meth:`loop.call_soon` method to schedule a callback. " "The callback displays ``\"Hello World\"`` and then stops the event loop::" msgstr "" #: library/asyncio-eventloop.rst:1735 msgid "" "A similar :ref:`Hello World ` example created with a coroutine " "and the :func:`run` function." msgstr "" #: library/asyncio-eventloop.rst:1742 msgid "Display the current date with call_later()" msgstr "Afficher la date actuelle avec ``call_later()``" #: library/asyncio-eventloop.rst:1744 msgid "" "An example of a callback displaying the current date every second. The " "callback uses the :meth:`loop.call_later` method to reschedule itself after " "5 seconds, and then stops the event loop::" msgstr "" #: library/asyncio-eventloop.rst:1772 msgid "" "A similar :ref:`current date ` example created with a " "coroutine and the :func:`run` function." msgstr "" #: library/asyncio-eventloop.rst:1779 msgid "Watch a file descriptor for read events" msgstr "" #: library/asyncio-eventloop.rst:1781 msgid "" "Wait until a file descriptor received some data using the :meth:`loop." "add_reader` method and then close the event loop::" msgstr "" #: library/asyncio-eventloop.rst:1819 msgid "" "A similar :ref:`example ` using " "transports, protocols, and the :meth:`loop.create_connection` method." msgstr "" #: library/asyncio-eventloop.rst:1823 msgid "" "Another similar :ref:`example ` " "using the high-level :func:`asyncio.open_connection` function and streams." msgstr "" #: library/asyncio-eventloop.rst:1831 msgid "Set signal handlers for SIGINT and SIGTERM" msgstr "Définit les gestionnaires de signaux pour *SIGINT* et *SIGTERM*" #: library/asyncio-eventloop.rst:1833 msgid "(This ``signals`` example only works on Unix.)" msgstr "(Cet exemple ne fonctionne que sur Unix.)" #: library/asyncio-eventloop.rst:1835 msgid "" "Register handlers for signals :py:data:`SIGINT` and :py:data:`SIGTERM` using " "the :meth:`loop.add_signal_handler` method::" msgstr ""