Em Seg, 2006-03-13 às 08:21 +0100, Gregor Horvath escreveu: > Hi, > > I do not understand why __del__ does not get executed in the following > example.
It only collects when there are no references: >>> class A(object): ... def __init__(self): ... print "A's init" ... def __del__(self): ... print "A's del" ... >>> a = A() A's init >>> del a A's del >>> class B(object): ... a = A() ... A's init >>> del B >>> # We'll to tell him to collect the garbage here, but ... # usually it should not be necessary. ... import gc >>> gc.collect() A's del 20 >>> -- "Quem excele em empregar a força militar subjulga os exércitos dos outros povos sem travar batalha, toma cidades fortificadas dos outros povos sem as atacar e destrói os estados dos outros povos sem lutas prolongadas. Deve lutar sob o Céu com o propósito primordial da 'preservação'. Desse modo suas armas não se embotarão, e os ganhos poderão ser preservados. Essa é a estratégia para planejar ofensivas." -- Sun Tzu, em "A arte da guerra" -- http://mail.python.org/mailman/listinfo/python-list