https://github.com/python/cpython/commit/8ca85b5bc5a888b8329915aff0ceb34de9373546
commit: 8ca85b5bc5a888b8329915aff0ceb34de9373546
branch: main
author: Stan Ulbrych <[email protected]>
committer: StanFromIreland <[email protected]>
date: 2026-07-17T17:19:48+02:00
summary:
Shut down leaked executors in `test_interpreter_pool` (#153780)
files:
M Lib/test/test_concurrent_futures/test_interpreter_pool.py
diff --git a/Lib/test/test_concurrent_futures/test_interpreter_pool.py
b/Lib/test/test_concurrent_futures/test_interpreter_pool.py
index db5b89bb76ada96..e319849adf366d3 100644
--- a/Lib/test/test_concurrent_futures/test_interpreter_pool.py
+++ b/Lib/test/test_concurrent_futures/test_interpreter_pool.py
@@ -129,12 +129,12 @@ def test_init_script(self):
"""
os.write(w, b'\0')
- executor = self.executor_type(initializer=initscript)
- before_init = os.read(r, 100)
- fut = executor.submit(script)
- after_init = read_msg(r)
- fut.result()
- after_run = read_msg(r)
+ with self.executor_type(initializer=initscript) as executor:
+ before_init = os.read(r, 100)
+ fut = executor.submit(script)
+ after_init = read_msg(r)
+ fut.result()
+ after_run = read_msg(r)
self.assertEqual(before_init, b'\0')
self.assertEqual(after_init, msg1)
@@ -150,11 +150,11 @@ def test_init_func(self):
r, w = self.pipe()
os.write(w, b'\0')
- executor = self.executor_type(
- initializer=write_msg, initargs=(w, msg))
- before = os.read(r, 100)
- executor.submit(mul, 10, 10)
- after = read_msg(r)
+ with self.executor_type(
+ initializer=write_msg, initargs=(w, msg)) as executor:
+ before = os.read(r, 100)
+ executor.submit(mul, 10, 10)
+ after = read_msg(r)
self.assertEqual(before, b'\0')
self.assertEqual(after, msg)
@@ -260,11 +260,10 @@ def test_submit_script(self):
import os
os.write({w}, __name__.encode('utf-8') + b'\\0')
"""
- executor = self.executor_type()
-
- fut = executor.submit(script)
- res = fut.result()
- after = read_msg(r)
+ with self.executor_type() as executor:
+ fut = executor.submit(script)
+ res = fut.result()
+ after = read_msg(r)
self.assertEqual(after, b'__main__')
self.assertIs(res, None)
@@ -278,25 +277,24 @@ def task2():
spam += 1
return spam
- executor = self.executor_type()
-
- fut = executor.submit(task1)
- with self.assertRaises(_interpreters.NotShareableError):
- fut.result()
+ with self.executor_type() as executor:
+ fut = executor.submit(task1)
+ with self.assertRaises(_interpreters.NotShareableError):
+ fut.result()
- fut = executor.submit(task2)
- with self.assertRaises(_interpreters.NotShareableError):
- fut.result()
+ fut = executor.submit(task2)
+ with self.assertRaises(_interpreters.NotShareableError):
+ fut.result()
def test_submit_local_instance(self):
class Spam:
def __init__(self):
self.value = True
- executor = self.executor_type()
- fut = executor.submit(Spam)
- with self.assertRaises(_interpreters.NotShareableError):
- fut.result()
+ with self.executor_type() as executor:
+ fut = executor.submit(Spam)
+ with self.assertRaises(_interpreters.NotShareableError):
+ fut.result()
def test_submit_instance_method(self):
class Spam:
@@ -304,15 +302,15 @@ def run(self):
return True
spam = Spam()
- executor = self.executor_type()
- fut = executor.submit(spam.run)
- with self.assertRaises(_interpreters.NotShareableError):
- fut.result()
+ with self.executor_type() as executor:
+ fut = executor.submit(spam.run)
+ with self.assertRaises(_interpreters.NotShareableError):
+ fut.result()
def test_submit_func_globals(self):
- executor = self.executor_type()
- fut = executor.submit(get_current_name)
- name = fut.result()
+ with self.executor_type() as executor:
+ fut = executor.submit(get_current_name)
+ name = fut.result()
self.assertEqual(name, __name__)
self.assertNotEqual(name, '__main__')
_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]