Я новичок встраивания Python.Я пытаюсь встроить код Python + Numpy в функцию обратного вызова C ++ (внутри DLL)
проблема, с которой я сталкиваюсь, заключается в следующем.если у меня есть:
Py_Initialize();
// some python glue
// python invocation
Py_Finalize();
все работает нормально.
, но если у меня есть:
Py_Initialize();
_import_array(); //to initialize numpy C-API
// some python glue + numpy array object creation
// python invocation via PyObject_CallObject()
Py_Finalize();
, то происходит сбой во второй раз, когда он достигает _import_array ();(имеется в виду, что он работает для первого обратного вызова)
, если я вместо этого выполняю инициализацию python и numpy только один раз и финализацию в деструкторе (таким образом не каждый раз при инициализации / финализации), все выходит из строя при выходе из обратного вызова..
Проблема здесь, я полагаю, недолговечная, но я не знаю, как ее решить