bha*_*dra 22 python thread-local python-embedding
在C/C++应用程序中嵌入Python解释器已有详细记录.在C/C++应用程序中调用的多个操作系统线程(即同一进程中的一个操作系统线程上的一个解释器)上运行多个python解释器的最佳方法是什么?此类应用程序也可能存在与内存碎片和Py_Finalize()限制相关的问题.
一种这样的方法可以是:
我的问题是:
这里讨论类似的主题:
这并不完全是您问题的答案,但您可以使用单独的进程而不是线程,那么问题就会消失。
优点:
缺点:
如果您对 IPC 使用共享内存,则生成的应用程序代码不应与使用线程获得的代码有太大差异。
鉴于有些人认为您应该始终使用进程而不是线程,如果它以任何方式符合您的限制,我至少会考虑将其作为替代方案。