- java.lang.Object
-
- com.sun.management.GcInfo
-
- All Implemented Interfaces:
-
CompositeData
,CompositeDataView
public class GcInfo extends Object implements CompositeData, CompositeDataView
垃圾收集信息。 它包含一个垃圾收集以及GC特定属性的以下信息:- Start time
- End time
- Duration
- Memory usage before the collection starts
- Memory usage after the collection ends
GcInfo
是一个CompositeData
可以通过CompositeData接口获得GC特定的属性。 这是一个历史文物,其他的类也不应该复制这种模式。 改用CompositeDataView
。MXBean映射
GcInfo
被映射到CompositeData
作为指定具有属性from
方法。- 从以下版本开始:
- 1.5
-
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 boolean
containsKey(String key)
返回true
当且仅当此CompositeData
实例包含名称是项目key
。boolean
containsValue(Object value)
返回true
当且仅当此CompositeData
实例包含其值是一个项目value
。boolean
equals(Object obj)
指示一些其他对象是否等于此。static GcInfo
from(CompositeData cd)
返回由给定的CompositeData
表示的GcInfo
对象。Object
get(String key)
返回名称为key
的项目的值。Object[]
getAll(String[] keys)
返回其名称由被指定的项目的值的数组keys
,以相同的顺序为keys
。CompositeType
getCompositeType()
返回此 复合数据实例的 复合类型 。long
getDuration()
返回此GC的已用时间(以毫秒为单位)。long
getEndTime()
从Java虚拟机启动后返回此GC的结束时间(以毫秒为单位)。long
getId()
返回此垃圾收集的标识符,该收集器是收集器完成的集合数。Map<String,MemoryUsage>
getMemoryUsageAfterGc()
返回此GC结尾处的所有内存池的内存使用情况。Map<String,MemoryUsage>
getMemoryUsageBeforeGc()
返回此GC开头的所有内存池的内存使用情况。long
getStartTime()
从Java虚拟机启动后返回此GC的开始时间(以毫秒为单位)。int
hashCode()
返回对象的哈希码值。CompositeData
toCompositeData(CompositeType ct)
返回CompositeData
如此表示GcInfo
,包括任何具体的GC-属性。String
toString()
返回对象的字符串表示形式。Collection<?>
values()
返回此CompositeData
实例中包含的项目值的不可修改的集合视图。
-
-
-
方法详细信息
-
getId
public long getId()
返回此垃圾收集的标识符,该收集器是收集器完成的集合数。- 结果
- 这个垃圾收集的标识符是收集器完成的集合数。
-
getStartTime
public long getStartTime()
从Java虚拟机启动后返回此GC的开始时间(以毫秒为单位)。- 结果
- 该GC的开始时间。
-
getEndTime
public long getEndTime()
从Java虚拟机启动后返回此GC的结束时间(以毫秒为单位)。- 结果
- 这个GC的结束时间。
-
getDuration
public long getDuration()
返回此GC的已用时间(以毫秒为单位)。- 结果
- 该GC的经过时间(以毫秒为单位)。
-
getMemoryUsageBeforeGc
public Map<String,MemoryUsage> getMemoryUsageBeforeGc()
返回此GC开头的所有内存池的内存使用情况。 此方法将返回一个内存池名称的Map
与GC启动前相应内存池的内存使用情况。- 结果
-
一个
Map
的内存池名称与GC启动前的内存池的内存使用情况。
-
getMemoryUsageAfterGc
public Map<String,MemoryUsage> getMemoryUsageAfterGc()
返回此GC结尾处的所有内存池的内存使用情况。 当GC完成时,此方法返回一个内存池名称的Map
到相应内存池的内存使用情况。- 结果
-
一个
Map
的内存池名称,当GC完成时,内存池的内存使用量。
-
from
public static GcInfo from(CompositeData cd)
返回由给定的CompositeData
表示的GcInfo
对象。 给定的CompositeData
必须包含以下所有属性:Attribute Name Type index java.lang.Long
startTime java.lang.Long
endTime java.lang.Long
memoryUsageBeforeGc javax.management.openmbean.TabularData
memoryUsageAfterGc javax.management.openmbean.TabularData
- 结果
-
一个
GcInfo
通过表示对象cd
如果cd
不是null
; 否则为null
。 - 异常
-
IllegalArgumentException
- 如果cd
不表示具有上述属性的GcInfo
对象。
-
containsKey
public boolean containsKey(String key)
描述从接口CompositeData
复制返回true
当且仅当此CompositeData
实例包含名称是项目key
。 如果key
是空或空字符串,则此方法只返回false。- Specified by:
-
containsKey
在接口CompositeData
- 参数
-
key
- 要测试的关键。 - 结果
-
如果这个
CompositeData
包含密钥,CompositeData
true。
-
containsValue
public boolean containsValue(Object value)
描述从接口CompositeData
复制返回true
当且仅当此CompositeData
实例包含其值是一个项目value
。- Specified by:
-
containsValue
在接口CompositeData
- 参数
-
value
- 要测试的值。 - 结果
-
如果此
CompositeData
true。
-
equals
public boolean equals(Object obj)
描述从类复制:Object
指示一些其他对象是否等于此。equals
方法在非空对象引用上实现等价关系:- 自反性 :对于任何非空的参考值
x
,x.equals(x)
应该返回true
。 - 它是对称的 :对于任何非空引用值
x
和y
,x.equals(y)
应该返回true
当且仅当y.equals(x)
回报true
。 - 传递性 :对于任何非空引用值
x
,y
,并z
,如果x.equals(y)
回报true
和y.equals(z)
回报true
,然后x.equals(z)
应该返回true
。 - 一致 :对于任何非空引用值
x
和y
,多重调用x.equals(y)
始终返回true
或始终返回false
,前提是在equals
对对象进行比较的信息进行修改。 - 对于任何非空的参考值
x
,x.equals(null)
应该返回false
。
该
equals
类方法Object
实现对象上差别可能性最大的相等关系; 也就是说,对于任何非空参考值x
和y
,当且仅当x
和y
引用相同对象(x == y
具有值true
)时,该方法返回true
。请注意,无论何时覆盖此方法,通常需要覆盖
hashCode
方法,以便维护hashCode
方法的通用合同,该方法规定相等的对象必须具有相等的哈希码。- Specified by:
-
equals
在接口CompositeData
- 重写:
-
equals
在Object
- 参数
-
obj
- 与之比较的参考对象。 - 结果
-
如果该对象与obj参数相同,
true
; 否则为false
。 - 另请参见:
-
Object.hashCode()
,HashMap
- 自反性 :对于任何非空的参考值
-
get
public Object get(String key)
描述从接口CompositeData
复制返回名称为key
的项目的值。- Specified by:
-
get
在接口CompositeData
- 参数
-
key
- 项目的名称。 - 结果
- 与该键相关联的值。
-
getAll
public Object[] getAll(String[] keys)
说明从接口CompositeData
复制返回其名称由被指定的项目的值的数组keys
,以相同的顺序为keys
。- Specified by:
-
getAll
在接口CompositeData
- 参数
-
keys
- 项目的名称。 - 结果
- 与键对应的值。
-
getCompositeType
public CompositeType getCompositeType()
说明从接口CompositeData
复制返回此 复合数据实例的 复合类型 。- Specified by:
-
getCompositeType
在接口CompositeData
- 结果
- 这个CompositeData的类型。
-
hashCode
public int hashCode()
描述从类复制:Object
返回对象的哈希码值。 支持这种方法有利于哈希表,如HashMap
所提供的那样 。hashCode
的一般合同是:- 只要在执行Java应用程序时多次在同一个对象上调用该函数,则
hashCode
方法必须始终返回相同的整数,前提是修改了对象中equals
比较中的信息。 该整数不需要从一个应用程序的执行到相同应用程序的另一个执行保持一致。 - 如果根据
equals(Object)
方法两个对象相等,则在两个对象中的每个对象上调用hashCode
方法必须产生相同的整数结果。 - 不要求如果两个对象根据
Object.equals(java.lang.Object)
方法不相等,那么在两个对象中的每个对象上调用hashCode
方法必须产生不同的整数结果。 但是,程序员应该意识到,为不等对象生成不同的整数结果可能会提高哈希表的性能。
尽可能多的合理实用,由类
Object
定义的hashCode方法确实为不同对象返回不同的整数。 (在某个时间点,hashCode可能或可能不被实现为对象的存储器地址的某些功能。)- Specified by:
-
hashCode
在接口CompositeData
- 重写:
-
hashCode
在Object
- 结果
- 该对象的哈希码值。
- 另请参见:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
- 只要在执行Java应用程序时多次在同一个对象上调用该函数,则
-
toString
public String toString()
描述从类复制:Object
返回对象的字符串表示形式。 一般来说,toString
方法返回一个字符串,“文本地表示”此对象。 结果应该是一个简明扼要的表达,容易让人阅读。 建议所有子类覆盖此方法。该
toString
类方法Object
返回一个由类的名称,其中所述对象是其实例,该符号字符`的字符串@
”,并且对象的哈希码的无符号的十六进制表示。 换句话说,这个方法返回一个等于下列值的字符串:getClass().getName() + '@' + Integer.toHexString(hashCode())
- Specified by:
-
toString
在接口CompositeData
- 重写:
-
toString
在Object
- 结果
- 对象的字符串表示形式。
-
values
public Collection<?> values()
描述从接口CompositeData
复制返回此CompositeData
实例中包含的项目值的不可修改的集合视图。 返回的集合的迭代器将以相应项目名称的升序字典顺序返回值。- Specified by:
-
values
在接口CompositeData
- 结果
- 价值。
-
toCompositeData
public CompositeData toCompositeData(CompositeType ct)
返回CompositeData
如此表示GcInfo
,包括任何具体的GC-属性。 返回的值将至少具有from
方法中描述的所有属性,以及可选的其他属性。- Specified by:
-
toCompositeData
在接口CompositeDataView
- 参数
-
ct
- 呼叫者期望的CompositeType
。 此参数被忽略,可以为null。 - 结果
-
the
CompositeData
representation.
-
-