似乎我找到了适用于我的简单解决方案:
假设我们有
C一个由SWIG生成的类,然后将其包装为
class PickalableC(C, PickalableSWIG): def __init__(self, *args): self.args = args C.__init__(self)
这里
PickalableSWIG是
class PickalableSWIG: def __setstate__(self, state): self.__init__(*state['args']) def __getstate__(self): return {'args': self.args}
然后
pickle.loads(pickle.dumps(C()))
失败,但是
pickle.loads(pickle.dumps(PickalableC()))
成功=)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)