Python中的__weakref__到底是什么?

Python中的__weakref__到底是什么?,第1张

Python中的__weakref__到底是什么?

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

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

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

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



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5631121.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存