Issue #23209: Break some reference cycles in asyncio. Patch written by Martin
Richard.
This commit is contained in:
parent
70db9e428a
commit
587feb19e8
|
@ -182,6 +182,7 @@ class WriteSubprocessPipeProto(protocols.BaseProtocol):
|
||||||
def connection_lost(self, exc):
|
def connection_lost(self, exc):
|
||||||
self.disconnected = True
|
self.disconnected = True
|
||||||
self.proc._pipe_connection_lost(self.fd, exc)
|
self.proc._pipe_connection_lost(self.fd, exc)
|
||||||
|
self.proc = None
|
||||||
|
|
||||||
def pause_writing(self):
|
def pause_writing(self):
|
||||||
self.proc._protocol.pause_writing()
|
self.proc._protocol.pause_writing()
|
||||||
|
|
|
@ -405,5 +405,5 @@ def wrap_future(fut, *, loop=None):
|
||||||
new_future.add_done_callback(_check_cancel_other)
|
new_future.add_done_callback(_check_cancel_other)
|
||||||
fut.add_done_callback(
|
fut.add_done_callback(
|
||||||
lambda future: loop.call_soon_threadsafe(
|
lambda future: loop.call_soon_threadsafe(
|
||||||
new_future._copy_state, fut))
|
new_future._copy_state, future))
|
||||||
return new_future
|
return new_future
|
||||||
|
|
|
@ -256,6 +256,7 @@ class _BaseSelectorImpl(BaseSelector):
|
||||||
|
|
||||||
def close(self):
|
def close(self):
|
||||||
self._fd_to_key.clear()
|
self._fd_to_key.clear()
|
||||||
|
self._map = None
|
||||||
|
|
||||||
def get_map(self):
|
def get_map(self):
|
||||||
return self._map
|
return self._map
|
||||||
|
|
Loading…
Reference in New Issue