Junior
34
0
questionbank

Что такое сборка мусора в Java?

Answer from sobes.tech neural network

Автоматический процесс управления памятью, который удаляет неиспользуемые объекты из кучи (heap), освобождая занимаемое ими пространство. Garbage Collector (GC) определяет, какие объекты доступны (referenceable) из работающих частей программы, а какие — нет (unreachable), и удаляет последние.

Основные этапы:

  1. Marking (Пометка): GC определяет, какие объекты живы ( reachable) начиная с корней (например, локальные переменные активных потоков, статические переменные).
  2. Sweeping (Очистка): GC проходит по куче и удаляет все объекты, не помеченные как живые.
  3. Compacting (Компактизация, необязательно): Перемещает живые объекты, чтобы уменьшить фрагментацию памяти.

Достоинства:

  • Упрощает разработку, избавляя от ручного управления памятью.
  • Снижает риск утечек памяти (memory leaks) и ошибок доступа к освобожденной памяти (dangling pointers).

Недостатки:

  • Могут возникать паузы в работе приложения (Stop-the-World events) во время сборки мусора.
  • GC требует вычислительных ресурсов.

Различные алгоритмы сборки мусора (Serial GC, Parallel GC, CMS, G1, ZGC, Shenandoah) о

Автоматический процесс управления памятью, который удаляет неиспользуемые объекты из кучи (heap), освобождая занимаемое ими пространство. Garbage Collector (GC) определяет, какие объекты доступны (referenceable) из работающих частей программы, а какие — нет (unreachable), и удаляет последние.

Основные этапы:

  1. Marking (Пометка): GC определяет, какие объекты живы ( reachable) начиная с корней (например, локальные переменные активных потоков, статические переменные).
  2. Sweeping (Очистка): GC проходит по куче и удаляет все объекты, не помеченные как живые.
  3. Compacting (Компактизация, необязательно): Перемещает живые объекты, чтобы уменьшить фрагментацию памяти.

Достоинства:

  • Упрощает разработку, избавляя от ручного управления памятью.
  • Снижает риск утечек памяти (memory leaks) и ошибок доступа к освобожденной памяти (dangling pointers).

Недостатки:

  • Могут возникать паузы в работе приложения (Stop-the-World events) во время сборки мусора.
  • GC требует вычислительных ресурсов.

Различные алгоритмы сборки мусора (Serial GC, Parallel GC, CMS, G1, ZGC, Shenandoah) о

Register or sign in to get access to full answers for all questions from the question bank.

garbage-collectionmemory-managementjvm