File tree Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Expand file tree Collapse file tree 1 file changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -7295,6 +7295,27 @@ def test_update_type_cache(self):
72957295 """ )
72967296 script_helper .assert_python_ok ('-c' , script )
72977297
7298+ @unittest .skipIf (_interpreters is None , "missing _interpreters module" )
7299+ def test_static_type_concurrent_init_fini (self ):
7300+ # gh-136421
7301+ script = textwrap .dedent ("""
7302+ import threading
7303+ import _interpreters
7304+
7305+ def run(id):
7306+ _interpreters.exec(id, "import _datetime; print('a', end='')")
7307+ _interpreters.destroy(id)
7308+
7309+ ids = [_interpreters.create() for i in range(5)]
7310+ ts = [threading.Thread(target=run, args=(id,)) for id in ids]
7311+ for t in ts:
7312+ t.start()
7313+ for t in ts:
7314+ t.join()
7315+ """ )
7316+ res = script_helper .assert_python_ok ('-c' , script )
7317+ self .assertEqual (res .out , b'a' * 5 )
7318+
72987319
72997320def load_tests (loader , standard_tests , pattern ):
73007321 standard_tests .addTest (ZoneInfoCompleteTest ())
You can’t perform that action at this time.
0 commit comments