Sun Java System Application Server 9.1 管理指南

Java SE 中的 JVM 统计信息

使用 Java SE,可以从 JVM 中获取其他监视信息。将监视级别设置为“低”以启用这些附加信息的显示。将监视级别设置为“高”还可以查看与系统中每个活动线程相关的信息。有关 Java SE 的其他监视功能的更多信息,请参见标题为 "Monitoring and Management for the Java Platform" 的文档,可从 http://java.sun.com/javase/6/docs/technotes/guides/management/ 获取该文档。

http://java.sun.com/javase/6/docs/technotes/tools/#manage 中讨论了 Java SE 监视工具。

下表中显示了 Java SE 的 JVM 中类装入的可用统计信息。

表 18–17 Java SE 的 JVM 统计信息-类装入

统计信息 

数据类型 

说明 

loadedclasscount

计数统计信息 

当前装入 JVM 的类的数目。 

totalloadedclasscount

计数统计信息 

自 JVM 开始执行以来已装入的类的总数。 

unloadedclasscount

计数统计信息 

自 JVM 开始执行以来已从 JVM 中卸载的类的数目。 

下表中显示了 Java SE 的 JVM 中编译的可用统计信息。

表 18–18 Java SE 的 JVM 统计信息-编译

统计信息 

数据类型 

说明 

totalcompilationtime

计数统计信息 

编译所花费的累积时间(以毫秒为单位)。 

下表中显示了 Java SE 的 JVM 中垃圾收集的可用统计信息。

表 18–19 Java SE 的 JVM 统计信息-垃圾收集

统计信息 

数据类型 

说明 

collectioncount

计数统计信息 

已发生的收集的总数。 

collectiontime

计数统计信息 

累积的收集时间(以毫秒为单位)。 

下表中显示了 Java SE 的 JVM 中内存的可用统计信息。

表 18–20 Java SE 的 JVM 统计信息-内存

统计信息 

数据类型 

说明 

objectpendingfinalizationcount

计数统计信息 

暂挂结束操作的对象的大约数目。 

initheapsize

计数统计信息 

最初由 JVM 请求的堆的大小。 

usedheapsize

计数统计信息 

当前正在使用的堆的大小。 

maxheapsize

计数统计信息 

可用于内存管理的最大内存容量(以字节为单位)。 

committedheapsize

计数统计信息 

确认可由 JVM 使用的内存容量(以字节为单位)。 

initnonheapsize

计数统计信息 

最初由 JVM 请求的非堆区域的大小。 

usednonheapsize

计数统计信息 

当前正在使用的非堆区域的大小。 

maxnonheapsize

计数统计信息 

可用于内存管理的最大内存容量(以字节为单位)。 

committednonheapsize

计数统计信息 

确认可由 JVM 使用的内存容量(以字节为单位)。 

下表中显示了Java SE 的 JVM 中操作系统的可用统计信息。

表 18–21 Java SE 的 JVM 统计信息-操作系统

统计信息 

数据类型 

说明 

arch

字符串统计信息 

操作系统体系结构。 

availableprocessors

计数统计信息 

可用于 JVM 的处理器的数目。 

name

字符串统计信息 

操作系统名称。 

version

字符串统计信息 

操作系统版本。 

下表中显示了 Java SE 的 JVM 中运行时的可用统计信息。

表 18–22 Java SE 的 JVM 统计信息-运行时

统计信息 

数据类型 

说明 

name

字符串统计信息 

代表正在运行的 JVM 的名称 

vmname

字符串统计信息 

JVM 实现名称。 

vmvendor

字符串统计信息 

JVM 实现供应商。 

vmversion

字符串统计信息 

JVM 实现版本。 

specname

字符串统计信息 

JVM 规范名称。 

specvendor

字符串统计信息 

JVM 规范供应商。 

specversion

字符串统计信息 

JVM 规范版本。 

managementspecversion

字符串统计信息 

由 JVM 实现的管理规范版本 

classpath

字符串统计信息 

系统类加载器搜索类文件时所使用的类路径。 

librarypath

字符串统计信息 

Java 库路径。 

bootclasspath

字符串统计信息 

引导类加载器搜索类文件时所使用的类路径。 

inputarguments

字符串统计信息 

传递给 JVM 的输入参数。不包括 main 方法的参数。

uptime

计数统计信息 

JVM 的正常运行时间(以毫秒为单位)。 

下表中显示了 Java SE 的 JVM 中线程信息的可用统计信息。

表 18–23 Java SE 的 JVM 统计信息-线程信息

统计信息 

数据类型 

说明 

threadid

计数统计信息 

线程 ID。 

threadname

字符串统计信息 

线程名称。 

threadstate

字符串统计信息 

线程状态。 

blockedtime

计数统计信息 

线程进入 BLOCKED 状态以来所经历的时间(以毫秒为单位)。如果已禁用线程争用监视,则返回 -1。

blockedcount

计数统计信息 

线程进入 BLOCKED 状态的总次数。

waitedtime

计数统计信息 

线程处于 WAITING 状态所经历的时间(以毫秒为单位)。如果已禁用线程争用监视,则返回 -1。

waitedcount

计数统计信息 

线程处于 WAITINGTIMED_WAITING 状态的总次数。

lockname

字符串统计信息 

一种监视锁的字符串表示形式,该监视锁表明线程被阻塞而无法进入或者正等待通过 Object.wait 方法接收通知。

lockownerid

计数统计信息 

保存某个对象的监视锁的线程 ID,该线程在该对象上发生阻塞。 

lockownername

字符串统计信息 

保存某个对象的监视锁的线程名称,该线程在该对象上发生阻塞。 

stacktrace

字符串统计信息 

与该线程相关的堆栈追踪。 

下表中显示了 Java SE 的 JVM 中线程的可用统计信息。

表 18–24 Java SE 的 JVM 统计信息-线程

统计信息 

数据类型 

说明 

threadcount

计数统计信息 

当前的活动守护线程和非守护线程数。 

peakthreadcount

计数统计信息 

自 JVM 启动或峰复位以来的峰活动线程计数。 

totalstartedthreadcount

计数统计信息 

自 JVM 启动以来创建和/或启动的线程总数。 

daemonthreadcount

计数统计信息 

当前的活动守护线程数。 

allthreadids

字符串统计信息 

所有活动线程 ID 列表。 

currentthreadcputime

计数统计信息 

如果已启用 CPU 时间测量,则表示当前线程的 CPU 时间(以纳秒为单位)。如果已禁用 CPU 时间测量,则返回 -1。 

monitordeadlockedthreads

字符串统计信息 

处于监视死锁状态的线程 ID 列表。