Module jdk.management

Class GcInfo

java.lang.Object
com.sun.management.GcInfo
所有已实现的接口:
CompositeData, CompositeDataView

public class GcInfo extends Object implements CompositeData, CompositeDataView
垃圾回收信息。它包含一个垃圾回收的以下信息以及特定于GC的属性:
  • 开始时间
  • 结束时间
  • 持续时间
  • 收集开始前的内存使用情况
  • 收集结束后的内存使用情况

GcInfo 是一个 CompositeData。可以通过CompositeData接口获取特定于GC的属性。这是一个历史遗留物,其他类不应复制这种模式。应该使用 CompositeDataView

MXBean映射

GcInfo 被映射为一个 CompositeData,其属性如 from 方法中指定的那样。
自Java版本:
1.5
  • Method Details

    • getId

      public long getId()
      返回此垃圾回收的标识符,即此收集器已执行的收集次数。
      返回:
      此垃圾回收的标识符,即此收集器已执行的收集次数。
    • getStartTime

      public long getStartTime()
      返回此GC的开始时间(自Java虚拟机启动以来的毫秒数)。
      返回:
      此GC的开始时间。
    • getEndTime

      public long getEndTime()
      返回此GC的结束时间(自Java虚拟机启动以来的毫秒数)。
      返回:
      此GC的结束时间。
    • getDuration

      public long getDuration()
      返回此GC的经过的时间(以毫秒为单位)。
      返回:
      此GC的经过的时间(以毫秒为单位)。
    • getMemoryUsageBeforeGc

      public Map<String,MemoryUsage> getMemoryUsageBeforeGc()
      返回此GC开始时所有内存池的内存使用情况。此方法返回一个Map,将内存池的名称映射到GC开始前相应内存池的内存使用情况。
      返回:
      一个将内存池名称映射到GC开始前内存池的内存使用情况的Map
    • getMemoryUsageAfterGc

      public Map<String,MemoryUsage> getMemoryUsageAfterGc()
      返回此GC结束时所有内存池的内存使用情况。此方法返回一个Map,将内存池的名称映射到GC完成时相应内存池的内存使用情况。
      返回:
      一个将内存池名称映射到GC完成时内存池的内存使用情况的Map
    • from

      public static GcInfo from(CompositeData cd)
      返回由给定CompositeData表示的GcInfo对象。给定的CompositeData必须包含所有以下属性:
      描述
      属性名称 类型
      index java.lang.Long
      startTime java.lang.Long
      endTime java.lang.Long
      memoryUsageBeforeGc javax.management.openmbean.TabularData
      memoryUsageAfterGc javax.management.openmbean.TabularData
      返回:
      如果cd不为null,则返回由cd表示的GcInfo对象;否则返回null
      抛出:
      IllegalArgumentException - 如果cd不表示具有上述属性的GcInfo对象。
    • containsKey

      public boolean containsKey(String key)
      从接口复制的描述: CompositeData
      如果此CompositeData实例包含名称为key的项,则返回true。如果key为null或空字符串,则此方法简单地返回false。
      指定者:
      containsKey 在接口 CompositeData
      参数:
      key - 要测试的键。
      返回:
      如果此CompositeData包含该键,则返回true。
    • containsValue

      public boolean containsValue(Object value)
      从接口复制的描述: CompositeData
      如果此CompositeData实例包含值为value的项,则返回true
      指定者:
      containsValue 在接口 CompositeData
      参数:
      value - 要测试的值。
      返回:
      如果此CompositeData包含该值,则返回true。
    • equals

      public boolean equals(Object obj)
      从类复制的描述: Object
      指示某个对象是否与此对象“相等”。

      equals方法在非null对象引用上实现等价关系:

      • 它是自反的:对于任何非null引用值xx.equals(x)应返回true
      • 它是对称的:对于任何非null引用值xy,如果x.equals(y)应返回true,则y.equals(x)应返回true
      • 它是传递的:对于任何非null引用值xyz,如果x.equals(y)返回truey.equals(z)返回true,则x.equals(z)应返回true
      • 它是一致的:对于任何非null引用值xy,多次调用x.equals(y)应一致地返回true或一致地返回false,前提是在对象的equals比较中使用的信息未被修改。
      • 对于任何非null引用值xx.equals(null)应返回false
      等价类;等价类的所有成员彼此相等。等价类的成员可以互换使用,至少对于某些目的是可以的。

      指定者:
      equals 在接口 CompositeData
      覆盖:
      equals 在类 Object
      参数:
      obj - 用于比较的引用对象。
      返回值:
      如果此对象与obj参数相同,则返回true; 否则返回false
      参见:
    • get

      public Object get(String key)
      从接口复制的描述: CompositeData
      返回名称为key的项的值。
      指定者:
      get 在接口 CompositeData
      参数:
      key - 项的名称。
      返回值:
      与此键关联的值。
    • getAll

      public Object[] getAll(String[] keys)
      从接口复制的描述: CompositeData
      返回由keys指定的项的值数组,顺序与keys相同。
      指定者:
      getAll 在接口 CompositeData
      参数:
      keys - 项的名称。
      返回值:
      与键对应的值。
    • getCompositeType

      public CompositeType getCompositeType()
      从接口复制的描述: CompositeData
      返回此复合数据实例的复合类型
      指定者:
      getCompositeType 在接口 CompositeData
      返回值:
      此CompositeData的类型。
    • hashCode

      public int hashCode()
      从类复制的描述: Object
      为对象返回一个哈希码值。此方法支持哈希表的好处,例如由HashMap提供的哈希表。

      hashCode的一般约定是:

      • 在Java应用程序的执行期间,如果在同一对象上多次调用hashCode方法,则只要用于equals比较的信息未被修改,hashCode方法必须一致地返回相同的整数。不需要保证此整数从一个应用程序的执行到另一个应用程序的执行保持一致。
      • 如果两个对象根据equals方法是相等的,则在这两个对象的每个对象上调用hashCode方法必须产生相同的整数结果。
      • 不需要要求如果两个对象根据equals方法是不相等的,则在这两个对象的每个对象上调用hashCode方法必须产生不同的整数结果。但是,程序员应该意识到,为不相等的对象产生不同的整数结果可能会提高哈希表的性能。
      指定者:
      hashCode 在接口 CompositeData
      覆盖:
      hashCode 在类 Object
      返回值:
      此对象的哈希码值。
      参见:
    • toString

      public String toString()
      从类复制的描述: Object
      返回对象的字符串表示形式。
      指定者:
      toString 在接口 CompositeData
      覆盖:
      toString 在类 Object
      返回值:
      对象的字符串表示形式。
    • values

      public Collection<?> values()
      从接口复制的描述: CompositeData
      返回此CompositeData实例中包含的项值的不可修改的集合视图。返回的集合的迭代器将按照相应项名称的升序字典顺序返回值。
      指定者:
      values 在接口 CompositeData
      返回值:
      值。
    • toCompositeData

      public CompositeData toCompositeData(CompositeType ct)
      返回此GcInfoCompositeData表示,包括任何特定于GC的属性。返回值将至少具有from方法中描述的所有属性,以及其他属性(可选)。
      指定者:
      toCompositeData 在接口 CompositeDataView
      参数:
      ct - 调用方期望的CompositeType。此参数将被忽略,可以为null。
      返回值:
      CompositeData表示。