model A (Loglan'82) Model B (C++ 1986) Model C (Java 1995, Python) Przed Na pewien obiekt o wskazują zmienne x1,x2, ..., xn. Instrukcja      kill(xi)      delete(xi) x1=null;x2=null; ... xn=null;Po wykonaniu instrukcji gc() obiekt zostanie usunięty. Po Wszystkie zmienne przyjęły wartość none. Obiekt został usunięty. Obiekt o został usunięty. x ma wartość null. Inne zmienne wskazują na zwolnione pole – jest to groźny błąd – wiszącej referencji. Obiekt został usunięty, pod warunkiem, że nie zapomniano o żadnej zmiennej wskazującej na obiekt oSytuacja w Pythonie wymaga dłuższego opisu. Programista może mianowicie niektóre referencje do obiektu o określić jako słabe. Zwalnia go to z obowiązku pamiętania, że takie referencje do obiektu o istnieją. Wystarczy osunąć tylko silne referencje do obiektu, by przy odśmiecaniu obiekt ten został usunięty.. Koszt Stały (nieduży) Stały (nieduży). Znaczny, zależny od liczby zmiennych wskazujących na obiekt i od łącznego rozmiaru pamięci obiektowej (koszt operacji gc()). Ryzyko Brak(!).Próba dostępu do obiektu o podnosi wyjątek reference to none. Duże prawdopodobieństwo (przy n>1) błędu wiszących referencjiDuże prawdopodobieństwo błędu sprzecznych informacji.