我只想找出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/

10-10 09:45