Как объекты становятся пригодными для сбора мусора в Java?

Объект не станет кандидатом на сбор мусора, пока все ссылки на него не будут отброшены. Объект отмечен как имеющий право на сбор мусора, когда он больше не может быть доступен, что может произойти, когда объект выходит за рамки. Это также может произойти, когда ссылочной переменной объекта присваивается явное значение null или повторно инициализируется. Если к объекту не удается получить доступ, это означает, что любой живой поток не может получить к нему доступ через любую ссылочную переменную, которая используется в программе.

Как правило, объект становится пригодным для сбора мусора в Java в следующих случаях:

  1. Любые экземпляры, которые не могут быть достигнуты потоком в реальном времени.
  2. Циклически ссылающиеся экземпляры, которые не могут быть достигнуты никакими другими экземплярами.
  3. Если объект имеет только слабые ссылки через WeakHashMap, он будет иметь право на сбор мусора.
  4. Объект создается внутри блока, а ссылка выходит из области действия после того, как элемент управления выйдет из этого блока.

Источник: http://net-informations.com/Java/cJava/eligible.htm

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector