Есть ли способ узнать, какой алгоритм GC в настоящее время использует JVM

Я использую Java 5, и нашему пользовательскому серверному приложению требуется настройка сборщика мусора, так как иногда мы наблюдаем 15-20 секундную паузу в часы пик. Мы запускаем Java 5 на машине серверного класса с такими аргументами JVM, как -server -d64

Есть ли способ узнать, какой алгоритм GC использует JVM в настоящее время?

http://docs.oracle. com / javase / 1.5.0 / docs / guide / vm / gc-ergonomics.html

На машинах серверного класса, на которых работает серверная виртуальная машина, сборщик мусора (GC) изменился по сравнению с предыдущим последовательным сборщиком ( - XX: + UseSerialGC ) к параллельному сборщику ( -XX: + UseParallelGC ). Вы можете изменить это значение по умолчанию, используя параметр командной строки -XX: + UseSerialGC для команды java.

1) Я хочу знать, действительно ли это происходит?

Мой следующий вопрос: Я добавил следующее в аргументы командной строки

-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+PrintGCApplicationStoppedTime -XX:+PrintGCApplicationConcurrentTime -Xloggc:logs/gc.log

2) будут ли они иметь какое-либо влияние на производительность или поведение на работающей JVM, кроме ведения журналов GC?

6
задан Johannes Weiss 15 February 2012 в 18:23
поделиться