@syntor:
Wobei man natürlich erwähnen sollte, dass Freigabe für den GC != promptes Enfernen aus dem Speicher. Denn bekanntlich sammelt der GC von CPython die Objekte aus Optimierungsgründen generationsweise ein. Bei anderen Implementierungen mag das Verhalten zudem noch ganz anders aussehen. Man kann sich also nicht darauf verlassen, dass der Speicher schon in dem Moment freigegeben wird, wo das Objekt sozusagen gerade "out of scope" gegangen ist. Eher ist dies der frühestmögliche Zeitpunkt für das Einsammeln. Im "schlimmsten" Fall kann es sogar sein, dass die Speicherfreigabe nie bzw erst mit Beenden des Interpreters erfolgt.
Bei einer Sprache mit automatischer Speicherbereinigung sollte man daher gar nicht erst auf die Idee kommen, jedwedes Verhalten des GCs mit einzuplanen. Wenn man denn unbedingt damit "konkurrieren" will, dann möchte man sich vielleicht mal das Modul
gc anschauen, das Zugriff auf das Interface des Collectors bietet.
Ich glaube aber, man muss bei dieser Frage prinzipiell unterscheiden zwischen "Existenz" im Sinne von "Speicherbelegung" oder "Existenz" im Sinne von "Erreichbarkeit". Hier nehme ich an, dass eher Letzteres gemeint war.