Browse Source

Closes #22348: Rephrase asyncio.StreamWriter.drain() documentation

Patch written by Martin Richard.
pull/224/head
Victor Stinner 12 years ago
parent
commit
e7182979d6
  1. 14
      Doc/library/asyncio-stream.rst
  2. 1
      Misc/ACKS

14
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>`.

1
Misc/ACKS

@ -1125,6 +1125,7 @@ Francesco Ricciardi
Tim Rice
Jan Pieter Riegel
Armin Rigo
Martin Richard
Arc Riley
Nicholas Riley
Jean-Claude Rimbault

Loading…
Cancel
Save