Commit 7f9a2ae7 authored by Łukasz Langa's avatar Łukasz Langa Committed by GitHub

Revert "bpo-34037, asyncio: add BaseEventLoop.wait_executor_on_close (GH-13786)" (#13802)

This reverts commit 0f0a30f4.
parent 8f4bbb5d
...@@ -140,18 +140,12 @@ Running and stopping the loop ...@@ -140,18 +140,12 @@ Running and stopping the loop
The loop must not be running when this function is called. The loop must not be running when this function is called.
Any pending callbacks will be discarded. Any pending callbacks will be discarded.
This method clears all queues and shuts down the default executor. By This method clears all queues and shuts down the executor, but does
default, it waits for the default executor to finish. Set not wait for the executor to finish.
*loop.wait_executor_on_close* to ``False`` to not wait for the executor.
This method is idempotent and irreversible. No other methods This method is idempotent and irreversible. No other methods
should be called after the event loop is closed. should be called after the event loop is closed.
.. versionchanged:: 3.8
The method now waits for the default executor to finish by default.
Added *loop.wait_executor_on_close* attribute.
.. coroutinemethod:: loop.shutdown_asyncgens() .. coroutinemethod:: loop.shutdown_asyncgens()
Schedule all currently open :term:`asynchronous generator` objects to Schedule all currently open :term:`asynchronous generator` objects to
......
...@@ -380,8 +380,6 @@ class Server(events.AbstractServer): ...@@ -380,8 +380,6 @@ class Server(events.AbstractServer):
class BaseEventLoop(events.AbstractEventLoop): class BaseEventLoop(events.AbstractEventLoop):
def __init__(self): def __init__(self):
# If true, close() waits for the default executor to finish
self.wait_executor_on_close = True
self._timer_cancelled_count = 0 self._timer_cancelled_count = 0
self._closed = False self._closed = False
self._stopping = False self._stopping = False
...@@ -637,7 +635,7 @@ class BaseEventLoop(events.AbstractEventLoop): ...@@ -637,7 +635,7 @@ class BaseEventLoop(events.AbstractEventLoop):
executor = self._default_executor executor = self._default_executor
if executor is not None: if executor is not None:
self._default_executor = None self._default_executor = None
executor.shutdown(wait=self.wait_executor_on_close) executor.shutdown(wait=False)
def is_closed(self): def is_closed(self):
"""Returns True if the event loop was closed.""" """Returns True if the event loop was closed."""
......
:mod:`asyncio`: ``loop.close()`` now waits for the default executor to
finish by default. Set ``loop.wait_executor_on_close`` attribute to
``False`` to opt-in for Python 3.7 behavior (not wait for the executor to
finish).
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