summaryrefslogtreecommitdiffstats
path: root/Include
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2016-03-14 21:07:55 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2016-03-14 21:07:55 (GMT)
commit8a1be61849341528c866924cf69d378ce7790889 (patch)
tree0b59fbc22edbd703ded539758aae78382d4eec7d /Include
parent08572f68a980576e883e4eba1227b59782d5192e (diff)
downloadcpython-8a1be61849341528c866924cf69d378ce7790889.zip
cpython-8a1be61849341528c866924cf69d378ce7790889.tar.gz
cpython-8a1be61849341528c866924cf69d378ce7790889.tar.bz2
Add more checks on the GIL
Issue #10915, #15751, #26558: * PyGILState_Check() now returns 1 (success) before the creation of the GIL and after the destruction of the GIL. It allows to use the function early in Python initialization and late in Python finalization. * Add a flag to disable PyGILState_Check(). Disable PyGILState_Check() when Py_NewInterpreter() is called * Add assert(PyGILState_Check()) to: _Py_dup(), _Py_fstat(), _Py_read() and _Py_write()
Diffstat (limited to 'Include')
-rw-r--r--Include/pystate.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/Include/pystate.h b/Include/pystate.h
index b50b16b..550c332 100644
--- a/Include/pystate.h
+++ b/Include/pystate.h
@@ -247,6 +247,10 @@ PyAPI_FUNC(PyThreadState *) PyGILState_GetThisThreadState(void);
* currently holds the GIL, 0 otherwise
*/
#ifndef Py_LIMITED_API
+/* Issue #26558: Flag to disable PyGILState_Check().
+ If set, PyGILState_Check() always return 1. */
+PyAPI_DATA(int) _PyGILState_check_enabled;
+
PyAPI_FUNC(int) PyGILState_Check(void);
#endif