Kaydet (Commit) 79d784ab authored tarafından Victor Stinner's avatar Victor Stinner

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

Patch written by Martin Richard.
......@@ -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>`.
......
......@@ -1140,6 +1140,7 @@ Francesco Ricciardi
Tim Rice
Jan Pieter Riegel
Armin Rigo
Martin Richard
Arc Riley
Nicholas Riley
Jean-Claude Rimbault
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment