Что делают флаги -XX:-PrintGC и XX:-PrintGCDetails?

Я нашел флаги JVM здесь. Есть ли более подробное объяснение того, что именно они делают?


person ripper234    schedule 29.11.2009    source источник


Ответы (2)


Установка этого флага записывает все сборки мусора, сделанные JVM, в файл журнала (или стандартный вывод, но тогда это менее полезно), и их можно анализировать с помощью таких инструментов, как упомянутые здесь. Используя эту информацию, вы можете точно настроить конфигурацию сборки мусора.

person David Rabinowitz    schedule 29.11.2009
comment
Можно ли, используя вышеупомянутые флаги, получить информацию о предыдущих циклах GC (время, когда эти флаги не были установлены)? - person TheLoneKing; 29.01.2015
comment
Что вы подразумеваете под предыдущими циклами GC? - person David Rabinowitz; 29.01.2015

Вместо Sun используйте -Xloggc:gc.log для входа в файл, -verbose:gc также является обычным переключателем для этого.

Также проверьте -XX:+PrintGCDetails и -XX:+PrintGCTimeStamps (обратите внимание на знак плюс +). Переключатель метки времени является избыточным, но его полезно включить.

person Jé Queue    schedule 30.11.2009
comment
не могли бы вы уточнить, что делает -verbose:gc? Поскольку этот ответ сбивает с толку тех, кто пытается получить помощь. А голосующими должны быть только те, кто это уже знает. - person Syed Aqeel Ashiq; 02.04.2018
comment
@SyedAqeelAshiq кажется немного злым в отношении голосов ... но -verbose:gc - это механизм для подробного ведения журнала событий сборки мусора, с помощью которого их можно анализировать и оценивать после или во время выполнения в отношении требуемой эргономики виртуальной машины. :-) - person Jé Queue; 04.04.2018
comment
Цель SO - предоставить высококачественные ответы тем, кто хочет получить помощь. Я искал флаг PrintGC, но этот ответ сбил меня с толку, и мне пришлось потратить несколько часов на поиск различий между PrintGC и verbose:gc. Возможно, вам следует обновить свой ответ, чтобы упомянуть разницу. И добавляйте полные предложения. - person Syed Aqeel Ashiq; 05.04.2018
comment
Это не отвечает на вопрос - в чем разница между этими двумя вариантами? - person em_bo; 21.11.2019
comment
-verbose:gc — псевдоним для -XX:+PrintGC; см. stackoverflow.com/questions/49609051/ - person Richard Steele; 14.02.2020