您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python中的__weakref__到底是什么?

Python中的__weakref__到底是什么?

__weakref__只是一个不透明的对象,它引用了当前对象的所有弱引用。实际上,它是weakref(或有时是weakproxy)的实例,它既是对该对象的弱引用,又是对该对象的所有弱引用的双向链接列表的一部分。

这只是一个实现细节,它使垃圾收集器可以通知弱引用其引用对象已被收集,并且不再允许访问其基础指针。

弱引用不能依赖于检查它所引用对象的引用计数。这是因为该内存可能已被回收,并且正在被另一个对象使用。最好的情况是VM崩溃,最坏的情况是弱引用将允许访问其最初未引用的对象。这就是为什么垃圾收集器必须通知弱引用其引用不再有效的原因。

有关该对象的结构,请参见weakrefobject.h,有关此对象,请参见C- API。实现细节在这里

python 2022/1/1 18:46:31 有335人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶