summaryrefslogtreecommitdiffstats
path: root/Doc/library/asyncio-protocol.rst
diff options
context:
space:
mode:
Diffstat (limited to 'Doc/library/asyncio-protocol.rst')
-rw-r--r--Doc/library/asyncio-protocol.rst32
1 files changed, 24 insertions, 8 deletions
diff --git a/Doc/library/asyncio-protocol.rst b/Doc/library/asyncio-protocol.rst
index 487b5ad..2e1218d 100644
--- a/Doc/library/asyncio-protocol.rst
+++ b/Doc/library/asyncio-protocol.rst
@@ -439,10 +439,13 @@ coroutine can be used to wait until the write buffer is flushed.
Protocol examples
=================
-TCP echo client
----------------
+.. _asyncio-tcp-echo-client-protocol:
-TCP echo client example, send data and wait until the connection is closed::
+TCP echo client protocol
+------------------------
+
+TCP echo client using the :meth:`BaseEventLoop.create_connection` method, send
+data and wait until the connection is closed::
import asyncio
@@ -478,11 +481,19 @@ having to write a short coroutine to handle the exception and stop the
running loop. At :meth:`~BaseEventLoop.run_until_complete` exit, the loop is
no longer running, so there is no need to stop the loop in case of an error.
+.. seealso::
+
+ The :ref:`TCP echo client using streams <asyncio-tcp-echo-client-streams>`
+ example uses the :func:`asyncio.open_connection` function.
+
-TCP echo server
----------------
+.. _asyncio-tcp-echo-server-protocol:
-TCP echo server example, send back received data and close the connection::
+TCP echo server protocol
+------------------------
+
+TCP echo server using the :meth:`BaseEventLoop.create_server` method, send back
+received data and close the connection::
import asyncio
@@ -507,12 +518,12 @@ TCP echo server example, send back received data and close the connection::
coro = loop.create_server(EchoServerClientProtocol, '127.0.0.1', 8888)
server = loop.run_until_complete(coro)
- # Server requests until CTRL+c is pressed
+ # Serve requests until CTRL+c is pressed
print('Serving on {}'.format(server.sockets[0].getsockname()))
try:
loop.run_forever()
except KeyboardInterrupt:
- print("exit")
+ pass
# Close the server
server.close()
@@ -524,6 +535,11 @@ TCP echo server example, send back received data and close the connection::
methods are asynchronous. ``yield from`` is not needed because these transport
methods are not coroutines.
+.. seealso::
+
+ The :ref:`TCP echo server using streams <asyncio-tcp-echo-server-streams>`
+ example uses the :func:`asyncio.start_server` function.
+
.. _asyncio-udp-echo-client-protocol: