Что такое корни GC для классов?
в Java есть специальные объекты, называемые Корни Сбора Мусора (корни GC). Они служат корневыми объектами для механизма маркировки сборки мусора (см. рисунок).
в этой статье описывает четыре типа корней GC:
- локальные переменные
- активные темы
- статические переменные
- JNI references
Он также отметил,, что:
сами классы могут быть собраны в мусор.
корни GC не собираются, поэтому сами классы не являются корнями GC.
Итак, каковы корни GC для классов?
2 ответов
Итак, каковы корни GC для классов?
Classloaders, эффективно-через другие корни GC.
если нет ничего, что может достичь загрузчика классов , что означает, что ничто не может достичь каких - либо экземпляров классов, созданных этим загрузчиком классов, то и загрузчик классов, и созданные им классы имеют право на сборку мусора.
корень сборки мусора-это объект, доступный извне кучи.
анализатор памяти классифицирует корни сбора мусора в соответствии со следующим списком:
- класс, загруженный system ClassLoader
- статическое поле в классах JDK (java.* и т. д.)
- живую нитку
- stack-local vars, метод params
- java.Ланге.Экземпляр потока
- объект проводится как монитор синхронизации
- JNI, у ссылок
- специальные предложения JVM...