我试图找到一个函数来告诉我当前线程是否具有全局解释器锁。
Python/C-API 文档似乎不包含这样的功能。
我当前的解决方案是PyGILState_Ensure()
在释放它之前使用获取锁PyEval_SaveThread
,而不是尝试释放当前线程未获取的锁。
(顺便说一句。“发出致命错误”是什么意思?)
这个问题的背景:我有一个嵌入 Python 的多线程应用程序。如果一个线程在没有释放锁的情况下关闭(这可能由于崩溃而发生),其他线程将无法再运行。因此,在清理/关闭线程时,我想检查该线程是否持有锁并在这种情况下释放它。
提前感谢您的回答!