Как узнать, какие настройки по умолчанию включены для 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)

Некоторые люди говорят, что он включен по умолчанию, другие говорят, что это не так:

от: http://forums.yourkit.com/viewtopic.php?f=3&t=3185

Да, вы правы, я также проверил это, и Compressed Oops не активируется по умолчанию в Java6u21 64-битной, я не понимаю, почему он так сказал в ссылках, которые я предоставил.

Я попытался проверить это с помощью jconsole/JMX, но мне не повезло найти атрибут с именем CompressedOops или тому подобное.

Кто-нибудь знает, где я получаю список всех опций jvm для конкретной сборки с их значениями по умолчанию?

С уважением Яннинг

1 ответ

Решение

Вы можете бегать с -XX:+PrintFlagsFinal распечатать значения всех флагов при запуске JVM.

Кроме того, вы можете использовать jinfo инструмент для проверки значения флага в работающей JVM:

> jinfo -flag UseCompressedOops 7364
-XX:+UseCompressedOops

использование jps чтобы найти pid процесса.

Другие вопросы по тегам