Как узнать, какие настройки по умолчанию включены для Sun JVM?
Я хочу попробовать CompressedOops на моем JVM. Нет, я задаюсь вопросом, может ли он быть включен по умолчанию. Я запускаю этот jvm на debian/squeeze:
$ java -version
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03, mixed mode)
Некоторые говорят, что он включен по умолчанию, некоторые говорят, что это не так:
from: http://forums.yourkit.com/viewtopic.php?f=3&t=3185
Да, вы правы, я также проверил его и сжатый Oops не активирован по умолчанию в Java6u21 64-бит, я делаю не понимаю, почему он так сказал в ссылки, которые я предоставил.
Я попытался проверить его с помощью jconsole/JMX, но не нашел нужного атрибута с именем CompressedOops или аналогичным.
Кто-нибудь знает, где я получаю список всех параметров jvm для конкретной сборки с их значениями по умолчанию?
С уважением
Janning
Ответы
Ответ 1
Вы можете запустить -XX:+PrintFlagsFinal
для печати значений всех флагов при запуске JVM.
В качестве альтернативы вы можете использовать инструмент jinfo
, чтобы проверить значение флага в запущенной JVM:
> jinfo -flag UseCompressedOops 7364
-XX:+UseCompressedOops
Используйте jps
, чтобы найти pid процесса.