summaryrefslogtreecommitdiff
path: root/Doc/library/asyncio-eventloop.rst
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2014-08-26 01:01:59 +0200
committerVictor Stinner <victor.stinner@gmail.com>2014-08-26 01:01:59 +0200
commitc31eea29598905735ae606b4491c932ab718b71f (patch)
treea89a343baa6e4dc407382e8587dfe81236cfdd01 /Doc/library/asyncio-eventloop.rst
parent74e191384d3767f4135e7be137db24195ea2d7c2 (diff)
downloadcpython-c31eea29598905735ae606b4491c932ab718b71f.tar.gz
Issue #22063: Fix asyncio documentation of socket and pipe operations regarding
to non-blocking mode. The non-blocking mode does not matter when using a ProactorEventLoop, only for SelectorEventLoop.
Diffstat (limited to 'Doc/library/asyncio-eventloop.rst')
-rw-r--r--Doc/library/asyncio-eventloop.rst19
1 files changed, 14 insertions, 5 deletions
diff --git a/Doc/library/asyncio-eventloop.rst b/Doc/library/asyncio-eventloop.rst
index ff685bb839..e9de4ad9d4 100644
--- a/Doc/library/asyncio-eventloop.rst
+++ b/Doc/library/asyncio-eventloop.rst
@@ -336,7 +336,8 @@ Low-level socket operations
representing the data received. The maximum amount of data to be received
at once is specified by *nbytes*.
- The socket *sock* must be non-blocking.
+ With :class:`SelectorEventLoop` event loop, the socket *sock* must be
+ non-blocking.
This method is a :ref:`coroutine <coroutine>`.
@@ -352,7 +353,8 @@ Low-level socket operations
an exception is raised, and there is no way to determine how much data, if
any, was successfully processed by the receiving end of the connection.
- The socket *sock* must be non-blocking.
+ With :class:`SelectorEventLoop` event loop, the socket *sock* must be
+ non-blocking.
This method is a :ref:`coroutine <coroutine>`.
@@ -370,7 +372,8 @@ Low-level socket operations
:py:data:`~socket.AF_INET` and :py:data:`~socket.AF_INET6` address families.
Use :meth:`getaddrinfo` to resolve the hostname asynchronously.
- The socket *sock* must be non-blocking.
+ With :class:`SelectorEventLoop` event loop, the socket *sock* must be
+ non-blocking.
This method is a :ref:`coroutine <coroutine>`.
@@ -418,13 +421,16 @@ Connect pipes
.. method:: BaseEventLoop.connect_read_pipe(protocol_factory, pipe)
- Register read pipe in eventloop. Set the *pipe* to non-blocking mode.
+ Register read pipe in eventloop.
*protocol_factory* should instantiate object with :class:`Protocol`
interface. *pipe* is a :term:`file-like object <file object>`.
Return pair ``(transport, protocol)``, where *transport* supports the
:class:`ReadTransport` interface.
+ With :class:`SelectorEventLoop` event loop, the *pipe* is set to
+ non-blocking mode.
+
This method is a :ref:`coroutine <coroutine>`.
.. method:: BaseEventLoop.connect_write_pipe(protocol_factory, pipe)
@@ -432,10 +438,13 @@ Connect pipes
Register write pipe in eventloop.
*protocol_factory* should instantiate object with :class:`BaseProtocol`
- interface. Pipe is file-like object already switched to nonblocking.
+ interface. *pipe* is file-like object.
Return pair (transport, protocol), where transport support
:class:`WriteTransport` interface.
+ With :class:`SelectorEventLoop` event loop, the *pipe* is set to
+ non-blocking mode.
+
This method is a :ref:`coroutine <coroutine>`.
.. seealso::