Al secondo richiamo del seguente codice, la mia app segfault, quindi credo che mi manca qualcosa:Py_initialize/Py_Finalize non funziona due volte con NumPy
Py_Initialize();
pName = PyString_FromString("comp_macbeth");
pModule = PyImport_Import(pName);
Py_DECREF(pName);
if(pModule == NULL) {
PyErr_Print();
Py_Finalize();
return;
}
pFunc = PyObject_GetAttrString(pModule, "compute");
/* pFunc is a new reference */
if (!pFunc || !PyCallable_Check(pFunc)) {
PyErr_Print();
Py_Finalize();
return;
}
Py_Finalize();
Il comp_macbeth.py importa NumPy. Se rimuovo l'importazione numpy, tutto va bene. È un bug insensato o mi manca qualcosa sulle importazioni?
Non ho bisogno di inizializzare/finalizzare più di una volta, ma volevo controllare se la mia comprensione era corretta – shodanex