summaryrefslogtreecommitdiffstats
path: root/Lib/test/test__xxsubinterpreters.py
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-05-01 09:33:44 (GMT)
committerGitHub <noreply@github.com>2020-05-01 09:33:44 (GMT)
commit252346acd937ddba4845331994b8ff4f90349625 (patch)
tree71d6298db81733d652abaa510c09ba90078efff0 /Lib/test/test__xxsubinterpreters.py
parent8bcfd31cc01e068bca78aa42a87c24aea6ebc6b1 (diff)
downloadcpython-252346acd937ddba4845331994b8ff4f90349625.zip
cpython-252346acd937ddba4845331994b8ff4f90349625.tar.gz
cpython-252346acd937ddba4845331994b8ff4f90349625.tar.bz2
bpo-40453: Add PyConfig._isolated_subinterpreter (GH-19820)
An isolated subinterpreter cannot spawn threads, spawn a child process or call os.fork(). * Add private _Py_NewInterpreter(isolated_subinterpreter) function. * Add isolated=True keyword-only parameter to _xxsubinterpreters.create(). * Allow again os.fork() in "non-isolated" subinterpreters.
Diffstat (limited to 'Lib/test/test__xxsubinterpreters.py')
-rw-r--r--Lib/test/test__xxsubinterpreters.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/Lib/test/test__xxsubinterpreters.py b/Lib/test/test__xxsubinterpreters.py
index 80eff19..e17bfde 100644
--- a/Lib/test/test__xxsubinterpreters.py
+++ b/Lib/test/test__xxsubinterpreters.py
@@ -794,6 +794,7 @@ class RunStringTests(TestBase):
self.assertEqual(out, 'it worked!')
def test_create_thread(self):
+ subinterp = interpreters.create(isolated=False)
script, file = _captured_script("""
import threading
def f():
@@ -804,7 +805,7 @@ class RunStringTests(TestBase):
t.join()
""")
with file:
- interpreters.run_string(self.id, script)
+ interpreters.run_string(subinterp, script)
out = file.read()
self.assertEqual(out, 'it worked!')