2015-05-19 26 views
0
std::cout << "im in here!\n"; 
PyGILState_STATE sMain = PyGILState_Ensure(); 

if (sMain) 
{ 
    std::cout << "attempting\n"; 
    PyRun_SimpleString("import sys; sys.exit();"); 
    std::cout << "attempted!\n"; 
} 

PyGILState_Release(sMain); 

好像從未嘗試打印但是SMAIN是有效的,存在 PyRun_SimpleString永遠不會出現回所有實際。有問題的Python代碼從未出現過。PyRun_SimpleString擋住,不會返回

編輯: 所以我已經縮小了問題的範圍,只要我在字符串中導入模塊。 普通代碼工作但罰款,如果我輸入的功能塊和永遠不會返回

+0

一次使用調試器。 –

回答

0

固定它,試圖用PyImport_ImportModuleNoBlock導入並報告該模塊的鎖被另一個線程的Python舉行2.7