summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2014-11-28 16:46:05 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2014-11-28 16:46:05 (GMT)
commit79d784ab7b84b5a441075dd4876bbffa411f3f76 (patch)
treef6f05fed1fdbcdcb3000bf75cfeb9ba099f8b51b /Doc
parent74210e1e0f7d1682f0bd78d206902fe8cb418136 (diff)
parente7182979d6e8178e4bbcc50beb142624b1a88223 (diff)
downloadcpython-79d784ab7b84b5a441075dd4876bbffa411f3f76.zip
cpython-79d784ab7b84b5a441075dd4876bbffa411f3f76.tar.gz
cpython-79d784ab7b84b5a441075dd4876bbffa411f3f76.tar.bz2
(Merge 3.4) Closes #22348: Rephrase asyncio.StreamWriter.drain() documentation
Patch written by Martin Richard.
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/asyncio-stream.rst14
1 files changed, 10 insertions, 4 deletions
diff --git a/Doc/library/asyncio-stream.rst b/Doc/library/asyncio-stream.rst
index 348132a..3809d94 100644
--- a/Doc/library/asyncio-stream.rst
+++ b/Doc/library/asyncio-stream.rst
@@ -170,16 +170,22 @@ StreamWriter
.. method:: drain()
- Wait until the write buffer of the underlying transport is flushed.
+ Let the write buffer of the underlying transport a chance to be flushed.
The intended use is to write::
w.write(data)
yield from w.drain()
- When the transport buffer is full (the protocol is paused), block until
- the buffer is (partially) drained and the protocol is resumed. When there
- is nothing to wait for, the yield-from continues immediately.
+ When the size of the transport buffer reaches the high-water limit (the
+ protocol is paused), block until the size of the buffer is drained down
+ to the low-water limit and the protocol is resumed. When there is nothing
+ to wait for, the yield-from continues immediately.
+
+ Yielding from :meth:`drain` gives the opportunity for the loop to
+ schedule the write operation and flush the buffer. It should especially
+ be used when a possibly large amount of data is written to the transport,
+ and the coroutine does not yield-from between calls to :meth:`write`.
This method is a :ref:`coroutine <coroutine>`.