如果它有所作为,我对有关 Python 3 的答案很感兴趣。
应该使用 , 调用的文档状态(此处和此处)。PyBuffer_Release()
PyArg_Parse*()
s*
y*
没有写过这样的东西Py_BuildValue()
。这是一个疏忽,还是在Py_BuildValue()
一个simple Py_DECREF()
足够的情况下?
这是我的具体情况:
uint8_t buf = (uint8_t *)malloc(bufSize);
PyObject *pyBuf = Py_BuildValue("y#", (char *)buf, bufSize);
free(buf);
// do something with pyBuf
// maybe a PyBuffer_Release(get_underlying_buffer(pyBuf)) here?
Py_DECREF(pyBuf);