【量产】如何查看正在运行中的JVM采用哪种GC算法策略
如何查看正在运行中的JVM采用哪种GC算法策略
发出提问
JVM,即是JAVA Viual Machine(java虚拟机);GC,即是Garbage Collector (垃圾收集器)。对于刚学习JVM的同学来说,不熟悉命令参数的获取,JVM采用不同的GC会对应不同的内存分配和回收策略。想获取正在运行的JVM正在采用哪种GC策略却无从查看,下面教程教你查看
解决方法
新建一个测试类:TestClass.java
1、【界面友好式】Debug/Run Configurations
step 1 :在Debug Configurations或Run Configurations中找到Arguments,并在VM Arguments中加入参数: -XX:+PrintCommandLineFlags,如下图所示:
step 2 :点击debug或者run,即可在console中看到如下回显,UseParallelGC是垃圾收集器的一种。
2、【命令简洁式】CMD命令行
我用的是jdk 8 ,虚拟机是HotSpot服务端64位版的
测试类TestClass.java需要保持运行状态或者debug中断状态。
step 1 : 输入: jps ,找到运行应用的PID:3080, 你的不一定是3080,这个数字后面有用。
step 2: 输入:jinfo -flags 3080 , 可查看参数设置,其中便可以发现采用的GC,如下图黄色字的部分。