diff options
| author | Victor Stinner <victor.stinner@gmail.com> | 2015-01-13 15:13:36 (GMT) |
|---|---|---|
| committer | Victor Stinner <victor.stinner@gmail.com> | 2015-01-13 15:13:36 (GMT) |
| commit | 7d5a95627b44b868a58128344431b8eb834b9bcb (patch) | |
| tree | 031b6aa0c65286fc6b1b78ea72402a41631c60e1 /Lib/asyncio/proactor_events.py | |
| parent | 610bc6a211be33b390a9910943f1f9fb7656f634 (diff) | |
| parent | 9036e49ba1acdd49ed7aa86a228a2657ca72c336 (diff) | |
| download | cpython-7d5a95627b44b868a58128344431b8eb834b9bcb.zip cpython-7d5a95627b44b868a58128344431b8eb834b9bcb.tar.gz cpython-7d5a95627b44b868a58128344431b8eb834b9bcb.tar.bz2 | |
Merge 3.4 (asyncio)
Diffstat (limited to 'Lib/asyncio/proactor_events.py')
| -rw-r--r-- | Lib/asyncio/proactor_events.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Lib/asyncio/proactor_events.py b/Lib/asyncio/proactor_events.py index 0a4d068..5986e37 100644 --- a/Lib/asyncio/proactor_events.py +++ b/Lib/asyncio/proactor_events.py @@ -387,13 +387,19 @@ class BaseProactorEventLoop(base_events.BaseEventLoop): raise RuntimeError("Cannot close a running event loop") if self.is_closed(): return + + # Call these methods before closing the event loop (before calling + # BaseEventLoop.close), because they can schedule callbacks with + # call_soon(), which is forbidden when the event loop is closed. self._stop_accept_futures() self._close_self_pipe() - super().close() self._proactor.close() self._proactor = None self._selector = None + # Close the event loop + super().close() + def sock_recv(self, sock, n): return self._proactor.recv(sock, n) |
