Я настроил java, чтобы выгрузить информацию о сборке мусора в журналы (verbose GC). Я не уверен, что означают записи коллекции мусора в журналах. Пример этих записей размещен ниже. Я искал вокруг на Google и не нашел твердых объяснений.Сбор мусора Java Сбор сообщений журнала
У меня есть некоторые разумные догадки, но я ищу ответы, которые содержат строгие определения того, что означают цифры в записях, подкрепленные достоверными источниками. Автоматический +1 для всех ответов, которые ссылаются на солнце документации. Мои вопросы:
- О чем говорит PSYoungGen? Я предполагаю, что это имеет какое-то отношение к предыдущему поколению, но что именно?
- В чем разница между вторым триплетом чисел и первым?
- Почему имя (PSYoungGen) указано для первого триплета чисел, но не второго?
- Что означает каждый номер (размер памяти) в триплете. Например, в 109884K-> 14201K (139904K), это память до GC 109884k, а затем она уменьшена до 14201K. Как относится к третьему номеру? Зачем нам нужен второй набор чисел?
8109,128: [GC [PSYoungGen: 109884K-> 14201K (139904K)] 691015K-> 595332K (1119040K), 0.0454530 сек]
8112.111: [GC [PSYoungGen: 126649K-> 15528K (142336K)] 707780K-> 605892K (1121472K), 0.0934560 сек]
8112.802: [GC [PSYoungGen: 130344K-> 3732K (118592K)] 720708K-> 607895K (1097728K), 0.0682690 сек]
вся куча, часть молодого поколения кучи, незначительный gc для того, как работает gc, проверьте, например. Http: //www.cubrid.org/blog/dev-platform/understanding-java-garbage-collection/ – MarianP