Junior
64
questionbank

Что такое сборщик мусора (Garbage Collector) в Java?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

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

Основные стадии работы:

  • Пометка (Marking): GC определяет достижимые объекты, начиная с корневых (например, локальные переменные, статические поля).
  • Удаление (Deletion): GC освобождает память, занимаемую объектами, которые не были помечены как достижимые.
  • Компактирование (Compacting - опционально): Некоторые сборщики мусора перемещают живые объекты, чтобы устранить фрагментацию памяти.

Типы сборщиков мусора:

  • Serial GC
  • Parallel GC
  • CMS (Concurrent Mark-Sweep) GC
  • G1 (Garbage First) GC
  • ZGC (Z Garbage Collector)
  • Shenandoah GC

Выбор сборщика влияет на производительность приложения, потребление памяти и время пауз.