Назад к вопросам
Альфа-Банк
Senior
7
Что относится к GC Roots? Какие еще кроме стека?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
GC Roots — это объекты, с которых начинается обход графа объектов в сборщике мусора JVM для определения достижимых объектов.
К объектам GC Roots относятся:
- Стековые переменные (Stack frames): локальные переменные и параметры методов, которые сейчас активны.
- Статические поля классов (Static fields): ссылки из статических переменных.
- Объекты, находящиеся в JNI (Java Native Interface): ссылки, удерживаемые нативным кодом.
- Объекты, зарегистрированные в системных классах: например, ClassLoader, Thread.
- Активные потоки (Threads): корневые объекты для стека каждого потока.
Таким образом, кроме стека, к GC Roots относятся статические поля, JNI-ссылки, активные потоки и системные объекты, которые гарантируют достижимость объектов и предотвращают их сборку.