Основные особенности сборщика мусора (Garbage Collector):
- Автоматизация управления памятью: Освобождает разработчика от ручного выделения / освобождения памяти, снижая риск ошибок типа "memory leaks" или "dangling pointers".
- Определение "мертвых" объектов: Использует алгоритмы для выявления объектов, которые больше не используются (недоступны из корневых ссылок).
- Различные алгоритмы сборки:
- Mark-and-Sweep: Помечает используемые объекты (Mark), затем удаляет непомеченные (Sweep). Может приводить к фрагментации памяти.
- Copying: Делит память на два пространства. Перемещает живые объекты из активного пространства в неактивное, затем очищает все активное. Эффективен при большом количестве "мертвых" объектов, но требует больше памяти.
- Mark-and-Compact: Помечает используемые