[Python-checkins] cpython (merge 3.4 -> default): (Merge 3.4) asyncio: BaseSelectorEventLoop.close() now closes the self-pipe
victor.stinner
python-checkins at python.org
Fri Nov 21 00:25:07 CET 2014
https://hg.python.org/cpython/rev/7ce62e80d3cd
changeset: 93523:7ce62e80d3cd
parent: 93520:5dbe3c3d014b
parent: 93522:a08c3703f844
user: Victor Stinner <victor.stinner at gmail.com>
date: Fri Nov 21 00:23:59 2014 +0100
summary:
(Merge 3.4) asyncio: BaseSelectorEventLoop.close() now closes the self-pipe
before calling the parent close() method. If the event loop is already closed,
the self-pipe is not unregistered from the selector.
files:
Lib/asyncio/selector_events.py | 4 +++-
1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/Lib/asyncio/selector_events.py b/Lib/asyncio/selector_events.py
--- a/Lib/asyncio/selector_events.py
+++ b/Lib/asyncio/selector_events.py
@@ -68,10 +68,12 @@
address, waiter, extra)
def close(self):
+ if self._running:
+ raise RuntimeError("Cannot close a running event loop")
if self.is_closed():
return
+ self._close_self_pipe()
super().close()
- self._close_self_pipe()
if self._selector is not None:
self._selector.close()
self._selector = None
--
Repository URL: https://hg.python.org/cpython
More information about the Python-checkins
mailing list