我只想找出JVM上一次垃圾回收的时间。这可能吗?我如何找到?
最佳答案
这应该可以帮助您入门:
import java.lang.management.GarbageCollectorMXBean;
import java.lang.management.ManagementFactory;
for (GarbageCollectorMXBean gcBean : ManagementFactory.getGarbageCollectorMXBeans()) {
System.out.println(gcBean.getCollectionCount());
com.sun.management.GarbageCollectorMXBean sunGcBean = (com.sun.management.GarbageCollectorMXBean) gcBean;
System.out.println(sunGcBean.getLastGcInfo().getStartTime());
}
转换为sunGcBean可能无法移植到非Sun JVM。您可以找到目标VM的特定于供应商的扩展,或在监视程序线程中监视gcBean.getCollectionCount()的增加,该线程记录了看到更改的当前时间。
关于java - 如何确定JVM上一次垃圾回收的时间?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5398172/