diff options
author | Guido van Rossum <guido@python.org> | 2015-11-19 21:33:34 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2015-11-19 21:33:34 (GMT) |
commit | 82f9feaf1054599fdb37c6c414c7ec2e107ec2da (patch) | |
tree | db2eeac255567196d66dbfbb8e312e6865c0eab0 /Doc/library/asyncio-eventloop.rst | |
parent | 557d1eb0f3ccb9b0bea685a1883dd249cbe6d23a (diff) | |
parent | 41f69f4cc7c977bd202545b8ada01b80a278d0e2 (diff) | |
download | cpython-82f9feaf1054599fdb37c6c414c7ec2e107ec2da.zip cpython-82f9feaf1054599fdb37c6c414c7ec2e107ec2da.tar.gz cpython-82f9feaf1054599fdb37c6c414c7ec2e107ec2da.tar.bz2 |
Issue #25593: Change semantics of EventLoop.stop(). (Merge 3.4->3.5)
Diffstat (limited to 'Doc/library/asyncio-eventloop.rst')
-rw-r--r-- | Doc/library/asyncio-eventloop.rst | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/Doc/library/asyncio-eventloop.rst b/Doc/library/asyncio-eventloop.rst index 279bc29..dbe351d 100644 --- a/Doc/library/asyncio-eventloop.rst +++ b/Doc/library/asyncio-eventloop.rst @@ -29,7 +29,16 @@ Run an event loop .. method:: BaseEventLoop.run_forever() - Run until :meth:`stop` is called. + Run until :meth:`stop` is called. If :meth:`stop` is called before + :meth:`run_forever()` is called, this polls the I/O selector once + with a timeout of zero, runs all callbacks scheduled in response to + I/O events (and those that were already scheduled), and then exits. + If :meth:`stop` is called while :meth:`run_forever` is running, + this will run the current batch of callbacks and then exit. Note + that callbacks scheduled by callbacks will not run in that case; + they will run the next time :meth:`run_forever` is called. + + .. versionchanged:: 3.5.1 .. method:: BaseEventLoop.run_until_complete(future) @@ -48,10 +57,10 @@ Run an event loop Stop running the event loop. - Every callback scheduled before :meth:`stop` is called will run. - Callbacks scheduled after :meth:`stop` is called will not run. - However, those callbacks will run if :meth:`run_forever` is called - again later. + This causes :meth:`run_forever` to exit at the next suitable + opportunity (see there for more details). + + .. versionchanged:: 3.5.1 .. method:: BaseEventLoop.is_closed() @@ -61,7 +70,8 @@ Run an event loop .. method:: BaseEventLoop.close() - Close the event loop. The loop must not be running. + Close the event loop. The loop must not be running. Pending + callbacks will be lost. This clears the queues and shuts down the executor, but does not wait for the executor to finish. |