Co uruchamia java Garbage Collector

Jestem trochę zdezorientowany, jak działa usuwanie śmieci w Javie.

Dostaję, że obiekt staje się uprawniony do wyrzucania śmieci, gdy nie ma już żywych odniesień do niego, ale co jeśli ma odniesienia do żywych obiektów?

Powiedzmy, że mam kolekcję węzłów, która ponownie odwołuje się do większej liczby węzłów

List
1 -> Node a -> Node b
2 -> Node c -> Node d
3 -> Node d -> Node c
4 -> Node e
5

Teraz, jeśli usunę listę, węzeł c d i e powinien zostać zebrany. Węzeł e nie ma już do niego żadnych odniesień, a węzeł c i d mają odniesienia cykliczne.

Ale co z węzłem? Czy będzie zbierane śmieci?

Czy będzie inaczej, czy węzeł b ma zewnętrzne odniesienia na żywo? Powiedz, czy węzeł b ma odniesienie do niego z innego miejsca, czy spowoduje to, że węzeł pozostanie w pamięci?

questionAnswers(3)

yourAnswerToTheQuestion