java查看当前jvm项目使用的垃圾回收器的实现方式
作者:apply_bomb
文章介绍了三种方法来查看Java应用程序使用的垃圾回收器:使用jconsole工具、运行代码打印参数以及使用命令行查看jps和vm参数,默认情况下,Java 8使用ParallelGC垃圾回收器,其中老年代使用ParallelOldGC
方法一:使用jconsole
jconsole
JConsole 是一个内置 Java 性能分析器,安装java时自带
默认位置:C:\Program Files\Java\jdk1.8.0_152\bin
选择你本地正在运行的jvm应用

切换到VM概要标签页面,可查看当前使用的垃圾回收器

方法二:运行代码打印当前的垃圾回收器
package com.lbx.ms.mq.bill2crm;
import java.lang.management.GarbageCollectorMXBean;
import java.lang.management.ManagementFactory;
import java.util.List;
public class GCTest {
public static void main(String args[]) {
List<GarbageCollectorMXBean> list = ManagementFactory.getGarbageCollectorMXBeans();
for(GarbageCollectorMXBean bean : list) {
System.out.println(bean.getName());
}
}
}
方法三:使用命令行
打开windows的命令行工具或者linux的控制台,运行以下命令查看当前有哪些jvm程序在运行
jps
然后运行以下命令,获取该应用所有的vm参数
jinfo -flags [你的应用进程号]
找到-useXXXX这样的参数,参数后即为所使用的GC回收器

由此可见,在没有额外设置的情况下,java8默认的垃圾回收器组合为ParallelGC
根据官网可以知道老年代垃圾回收器为ParallelOldGC

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
