File tree Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Expand file tree Collapse file tree 1 file changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -1128,6 +1128,12 @@ code, or when embedding the Python interpreter:
1128
1128
interpreter lock is also shared by all threads, regardless of to which
1129
1129
interpreter they belong.
1130
1130
1131
+ .. versionchanged:: 3.12
1132
+
1133
+ :pep:`684` introduced the possibility
1134
+ of a :ref:`per-interpreter GIL <per-interpreter-gil>`.
1135
+ See :c:func:`Py_NewInterpreterFromConfig`.
1136
+
1131
1137
1132
1138
.. c:type:: PyThreadState
1133
1139
@@ -1817,6 +1823,8 @@ function. You can create and destroy them using the following functions:
1817
1823
haven't been explicitly destroyed at that point.
1818
1824
1819
1825
1826
+ .. _per-interpreter-gil:
1827
+
1820
1828
A Per-Interpreter GIL
1821
1829
---------------------
1822
1830
@@ -1828,7 +1836,7 @@ being blocked by other interpreters or blocking any others. Thus a
1828
1836
single Python process can truly take advantage of multiple CPU cores
1829
1837
when running Python code. The isolation also encourages a different
1830
1838
approach to concurrency than that of just using threads.
1831
- (See :pep:`554`.)
1839
+ (See :pep:`554` and :pep:`684` .)
1832
1840
1833
1841
Using an isolated interpreter requires vigilance in preserving that
1834
1842
isolation. That especially means not sharing any objects or mutable
You can’t perform that action at this time.
0 commit comments