共計 607 個字符,預計需要花費 2 分鐘才能閱讀完成。
在 C ++ 中調用 Python 代碼可以使用 Python 的 C API 來實現。下面是一個簡單的示例,展示了如何在 C ++ 中使用多線程并發調用 Python 代碼:
- 首先,你需要在 C ++ 中包含 Python 的頭文件和庫文件。
#include <Python.h>
- 在需要調用 Python 代碼的地方,創建一個 Python 解釋器,并初始化。
Py_Initialize();
- 創建一個 Python 線程,并在該線程中調用 Python 代碼。
PyEval_InitThreads(); // 初始化 Python 線程支持
PyGILState_STATE gstate;
gstate = PyGILState_Ensure(); // 獲取全局解釋器鎖
PyRun_SimpleString("print('Hello from Python!')"); // 在 Python 中執行代碼
PyGILState_Release(gstate); // 釋放全局解釋器鎖
- 最后,在程序結束前,釋放 Python 解釋器。
Py_Finalize();
這樣就可以在 C ++ 中使用多線程并發調用 Python 代碼了。需要注意的是,Python 的全局解釋器鎖(GIL)限制了同一時間只能有一個線程執行 Python 字節碼,因此在多線程情況下,只有一個線程能夠執行 Python 代碼。如果需要更多的并行性,可以考慮使用其他方法,如使用多個進程調用 Python 等。
丸趣 TV 網 – 提供最優質的資源集合!
正文完