JVM垃圾收集器已用时间

时间:2017-04-27 04:10:25

标签: java garbage-collection jvm

我想测量GC中的经过时间。我正在使用java.lang.management。 GarbageCollectorMXBean。上面的接口中有一个名为getCollectionTime()的方法,它以毫秒为单位返回相同的方法。现在,com.sun.management.GarbageCollectorMXBean扩展了上面的接口并公开了一个方法getLastGcInfo()来获取一个GcInfo对象。它有一个方法getDuration()。

我想知道这两者之间有什么区别。我尝试了两个并且发现每个收集器的值都不同。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

取自java docs

getDuration()

  

以毫秒为单位返回此GC的已用时间。

getCollectionTime()

  

以毫秒为单位返回已累计的累计收集时间。如果未对此收集器定义集合已用时间,则此方法返回-1。

     

Java虚拟机实现可能使用高分辨率   计时器来测量经过的时间。此方法可能返回相同的内容   即使收集计数已增加,即使该值也是如此   收集经过的时间非常短。

相关问题