当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python weakref.WeakMethod用法及代码示例


用法:

class weakref.WeakMethod(method)

一个自定义 ref 子类,它模拟对绑定方法的弱引用(即,在类上定义并在实例上查找的方法)。由于绑定方法是短暂的,标准的弱引用无法保持它。 WeakMethod 有特殊代码来重新创建绑定方法,直到对象或原始函数死亡:

>>> class C:
...     def method(self):
...         print("method called!")
...
>>> c = C()
>>> r = weakref.ref(c.method)
>>> r()
>>> r = weakref.WeakMethod(c.method)
>>> r()
<bound method C.method of <__main__.C object at 0x7fc859830220>>
>>> r()()
method called!
>>> del c
>>> gc.collect()
0
>>> r()
>>>

3.4 版中的新函数。

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 weakref.WeakMethod。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。