diff options
| author | Victor Stinner <victor.stinner@gmail.com> | 2014-11-28 17:45:41 +0100 |
|---|---|---|
| committer | Victor Stinner <victor.stinner@gmail.com> | 2014-11-28 17:45:41 +0100 |
| commit | e7182979d6e8178e4bbcc50beb142624b1a88223 (patch) | |
| tree | d616a621c55aad158314e14a7db1437e4fb05b6e /Doc/library/asyncio-stream.rst | |
| parent | 1deee54e0cb0f681779259758a30f4fe142f1477 (diff) | |
| download | cpython-git-e7182979d6e8178e4bbcc50beb142624b1a88223.tar.gz | |
Closes #22348: Rephrase asyncio.StreamWriter.drain() documentation
Patch written by Martin Richard.
Diffstat (limited to 'Doc/library/asyncio-stream.rst')
| -rw-r--r-- | Doc/library/asyncio-stream.rst | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/Doc/library/asyncio-stream.rst b/Doc/library/asyncio-stream.rst index 348132a5b7..3809d947d5 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>`. |
