Python模块存储C库中的上下文指针

问题描述

我正在尝试将C库公开给python。在第一个API调用中,我的库创建了一个上下文对象,该对象必须保留并在所有后续调用中传递。

例如,如果libmylib.so公开以下方法

contxt_t *mylib_setup();
mylib_do_something(context_t *ctx);
mylib_teardown(context_t *ctx);

我想在python中执行以下操作:

import mylib

m = mylib()
m.setup()
m.do_something()
m.teardown()

因此,只要m在范围内,m的self对象应保存对返回的context_t *的不透明引用。我该如何实现?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)