2010-12-09 5 views
1

Eine Python-Klasse A:GC in Python: Was wird das verhalten?

a = A() 
array.append(a) 

... einig Operation ein Verfahren bs auslöst()

in a.b(): 

array.remove(self); 
# will this make the self be freed? as the only reference has been removed from array. 
# access the a's data... 
+1

Ich nehme an, das ist nach 'del a' auch? – Thomas

+3

Was versuchen Sie eigentlich? Der Garbage Collector ist normalerweise nicht beobachtbares Verhalten. – SingleNegationElimination

+2

Warum kümmert es dich, wenn etwas Müll gesammelt wird? –

Antwort

5

Während das Verfahren ausgeführt wird, haben Sie immer noch eine Referenz (self) zu a.

Nur einmal die Methode abgeschlossen ist a für die Sammlung.

Verwandte Themen