如何将PyObject *内存数据复制到另一个内存地址?

问题描述:

我正在研究一个嵌入了Python的C程序。如何将PyObject *内存数据复制到另一个内存地址?

主机程序是多进程,它通过共享内存(mmap)进行通信。

我在一个进程中创建了一个Python对象(例如,PyDict_New)。我如何将这些数据复制到共享内存中,以便其他进程可以获取这些数据并将其转换为Python对象?

最简单的方法是将你的Python对象转换为一个字符串并将该字符串复制到共享内存中。然后,另一个进程将它取消放回到一个Python对象中。从manual

“酸洗”是过程,由此Python对象层次 转换成字节流,而“取储存”是逆 操作,由此一个字节流被转换回对象 层次。