【发布时间】:2012-07-04 10:04:32
【问题描述】:
当我启动我的 Tomcat 服务器时,我不知道它使用的是哪种 GC 策略。我如何找到它?
【问题讨论】:
当我启动我的 Tomcat 服务器时,我不知道它使用的是哪种 GC 策略。我如何找到它?
【问题讨论】:
它使用的是您正在使用的 Java 版本的默认策略,除非您在 setenv.bat/.sh 中对其进行了更改。
【讨论】:
您可以使用 JDK 附带的 jinfo 实用程序在运行时查询 VM 标志和系统属性。但是,它只显示已明确设置的标志,而不显示正在使用的默认值。您必须阅读您的 JVM 供应商文档以了解默认值是什么,因为它们可能因一种 VM 实现而异。
【讨论】:
打印启动Tomcat时使用的命令行标志的选项是:
-XX:+PrintCommandLineFlags
【讨论】:
您可以使用“jmap”来确定。例如:
jmap -heap 15290
正在附加到进程 ID 15290,请稍候... 调试器连接成功。 检测到服务器编译器。 JVM版本为24.55-b03
使用线程局部对象分配。 并行 GC 具有 8 个线程 .....
正如您在此处看到的,它显示了并行 GC 策略
【讨论】: