1
有人可以檢查是否有內存泄漏?我很困惑。可能的內存泄漏
PyObject * somefunc(int function_id, int num_params, int * params){
PyObject * params_list=PyList_New(0);
for(int i=0; i < num_params; i++){
PyObject * val = Py_BuildValue("i", params[i]);
PyList_Append(params_list, val);
Py_DecRef(val);
}
PyObject * arglist = Py_BuildValue("(i,O)",
function_id, params_list);
//Should I DecRef(params_list) ??
return arglist;
}
當您嘗試代碼時會發生什麼? –
我沒有使用過cpython,但是你應該在函數結尾處釋放params_list內存,就像你所說的那樣。 – Stuart
你的輸出是什麼? – Abhineet