RE: [python] Pocet instancí objektu
Jan Matejka
matejka na cat.cz
Středa Leden 25 20:38:36 CET 2006
Zkousel jsem to taky pres weakref abych se vyhnul __del__ ktery zneschopnuje
garbage colllection. Funguje to pouze ke zjisteni, ze existuje alespon
jedna instance objektu.
Jako by weakref.getweakrefcount nevracela skutecny pocet referenci jak je v
dokumentaci ale pouze jestli nejaka je ci neni.
import weakref
class InstanceCounter:
pass
class A:
ic=InstanceCounter()
def __init__(self):
self.m_ic=weakref.ref(A.ic)
print weakref.getweakrefcount(A.ic)
o1=A()
print weakref.getweakrefcount(A.ic)
o2=A()
print weakref.getweakrefcount(A.ic)
del o1
print weakref.getweakrefcount(A.ic)
del o2
print weakref.getweakrefcount(A.ic)
vypise:
0
1
1
1
0
ale cekal bych
0
1
2
1
0
Jan Matejka
Další informace o konferenci Python