Кто-нибудь знает правильный ресурс для чтения доступных механизмов сбора мусора в java? До сих пор я нашел несколько веб-сайтов, но они не содержали подробного описания того, когда использовать, что и какова была реализация. (Я имею в виду Oracle jdk)
Java - доступные алгоритмы сбора мусора
Ответ 1
На сегодняшний день в VM Hotspot VM есть 4 алгоритма GC:
- Последовательный GC - рекомендуется для клиентских приложений, которые не имеют низких временных требований времени.
- Параметр Parallel GC - используется, когда имеет место пропускная способность.
- В большинстве случаев GC (также известный как Concurrent Mark-Sweep GC (CMS)) - используется, когда имеет место латентность.
- Garbage First GC (G1) - новый алгоритм GC для замены CMS.
Более подробную информацию об этих алгоритмах GC вы можете найти в приведенных ниже ссылках.
Книги:
- Производительность Java - практическое руководство, содержит главы по GC, всесторонне объясняет, когда и как использовать различные алгоритмы Hotspot GC,
- Справочник по сборщикам мусора - Объяснение теории сбора мусора упоминает все доступные методы GC.
Переговоры/Статьи:
- Java One 2012 Расширенная настройка JVM
- Java One 2012 Настройка производительности сборщика мусора G1
- Руководство по настройке коллекции мусора
- Сбор мусора Java HotSpot
Список рассылки:
Ответ 2
Ознакомьтесь с этим веб-сайтом www.cubrid.org/blog/tags/Garbage%20Collection/. В нем есть набор из пяти статей, описывающих gc от концепции до деталей и случаев использования.
Наверное, вы, вероятно, смотрите этот.