python - 如何调试`can't pickle _thread.RLock objects`?
问题描述
我明白了
不能腌制 _thread.RLock 对象
当我尝试腌制一个巨大的嵌套对象时出错,我试图找出树的哪个特定元素导致它。
有没有办法不用手动遍历嵌套对象树?
例如,我希望看到这样的消息
当我在 Quux 对象内的 Bar 对象内拾取 Foo 对象时,无法腌制 _thread.RLock 对象
class Quux:
def __init__(self):
self.a = [Bar()]
class Bar:
def __init__(self):
self.a = {"zz":Foo()}
class Foo:
def __init__(self):
self.a = _thread.RLock()
pickle.dump(Quux(),...)
解决方案
推荐阅读
- java - 错误找不到接口 javax.ws.rs.core.SecurityContext 的主要或默认构造函数
- c# - 了解 cmp(比较器函数)如何用作另一个函数的参数
- angular - “无法调用类型缺少调用签名的表达式。” 在 TypeScript 中使用“get”关键字时
- python - Flask-Restplus 如何将 2 个表中的数据组合成单个数据响应?
- python - Python - 线性回归
- python - Python:重定向在 os.system 上不起作用
- reactjs - 使用 Web 组件的单元测试反应
- postgresql - postgres createdb 语言环境问题
- android - 运行我的应用程序后,所有文件代码都更改为无效代码
- android - 当 backstack 中的片段可见时调用 onCreateOptionsMenu,但旧菜单对象仍然存在