mirror of
https://github.com/python/cpython.git
synced 2025-08-03 08:34:29 +00:00
bpo-33469: RuntimeError after closing loop that used run_in_executor (GH-7171)
This commit is contained in:
parent
f9b364fe51
commit
fdccfe09f0
3 changed files with 22 additions and 0 deletions
|
@ -347,6 +347,24 @@ class EventLoopTestsMixin:
|
|||
self.assertEqual(res, 'yo')
|
||||
self.assertNotEqual(thread_id, threading.get_ident())
|
||||
|
||||
def test_run_in_executor_cancel(self):
|
||||
called = False
|
||||
|
||||
def patched_call_soon(*args):
|
||||
nonlocal called
|
||||
called = True
|
||||
|
||||
def run():
|
||||
time.sleep(0.05)
|
||||
|
||||
f2 = self.loop.run_in_executor(None, run)
|
||||
f2.cancel()
|
||||
self.loop.close()
|
||||
self.loop.call_soon = patched_call_soon
|
||||
self.loop.call_soon_threadsafe = patched_call_soon
|
||||
time.sleep(0.4)
|
||||
self.assertFalse(called)
|
||||
|
||||
def test_reader_callback(self):
|
||||
r, w = socket.socketpair()
|
||||
r.setblocking(False)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue