Browse Source

Issue #19299: fix refleak test failures in test_asyncio

pull/224/head
Antoine Pitrou 12 years ago
parent
commit
4ca7355901
  1. 8
      Lib/asyncio/base_events.py
  2. 1
      Lib/asyncio/proactor_events.py
  3. 1
      Lib/asyncio/selector_events.py

8
Lib/asyncio/base_events.py

@ -185,6 +185,14 @@ class BaseEventLoop(events.AbstractEventLoop):
"""
self.call_soon(_raise_stop_error)
def close(self):
self._ready.clear()
self._scheduled.clear()
executor = self._default_executor
if executor is not None:
self._default_executor = None
executor.shutdown(wait=False)
def is_running(self):
"""Returns running status of event loop."""
return self._running

1
Lib/asyncio/proactor_events.py

@ -276,6 +276,7 @@ class BaseProactorEventLoop(base_events.BaseEventLoop):
self._proactor.close()
self._proactor = None
self._selector = None
super().close()
def sock_recv(self, sock, n):
return self._proactor.recv(sock, n)

1
Lib/asyncio/selector_events.py

@ -56,6 +56,7 @@ class BaseSelectorEventLoop(base_events.BaseEventLoop):
self._close_self_pipe()
self._selector.close()
self._selector = None
super().close()
def _socketpair(self):
raise NotImplementedError

Loading…
Cancel
Save