我正在尝试测试一个多线程的 C++ DLL。这个 DLL 应该是线程安全的。我已经用 boost.python 将其包装起来,并且我想通过 boost.python 包装器创建多个 Python 线程来调用 DLL。实际上,我“试图”引发线程问题。
我似乎找不到关于 Python 解释器是否支持两个线程(在不同的内核上)同时调用导入模块的良好文档,以及在这种情况下 GIL 是否需要保护,因为我不想提供 DLL 已经提供的任何额外的安全性。
有人能否描述或引荐一下 Python 如何从多个线程调用 DLL 模块以及在这种情况下应该如何使用 GIL 的说明?
我似乎找不到关于 Python 解释器是否支持两个线程(在不同的内核上)同时调用导入模块的良好文档,以及在这种情况下 GIL 是否需要保护,因为我不想提供 DLL 已经提供的任何额外的安全性。
有人能否描述或引荐一下 Python 如何从多个线程调用 DLL 模块以及在这种情况下应该如何使用 GIL 的说明?