十三、JVM 性能信息
13. 文件操作工具类
13.1 使用类
org.voovan.tools.TPerformance
- 内存类型枚举
/**
* 内存信息类型枚举
*/
public enum MEMTYPE{
NOHEAP_INIT,
HEAP_INIT,
NOHEAP_MAX,
HEAP_MAX,
NOHEAP_USAGE,
HEAP_USAGE,
NOHEAP_COMMIT,
HEAP_COMMIT
}
13.2 方法说明
13.2.1 获取当前系统的负载情况
public static double getSystemLoadAverage()
返回值
: 系统的负载情况。
13.2.2 获取当前系统 CPU 数
public static double getProcessorCount()
返回值
: 系统 CPU 数。
13.2.3 获取系统单 CPU 核心的平均负载
public static double cpuPerCoreLoadAvg()
返回值
: 单 CPU 核心的平均负载。
13.2.4 JVM 虚拟机的内存使用情况
public static double getJVMMemoryUsage()
返回值
: 内存使用情况。
13.2.5 获取部分内存信息(栈,非栈)
public static long getHeapMemoryInfo(MEMTYPE memType)
memType
: 获取的信息类型。返回值
: 当前内存数值。
13.2.6 获取当前内存信息
public static MemoryInfo getMemoryInfo()
返回值
: 内存信息描述对象。
13.2.7 获取虚拟机中的对象信息
public static Map<String,ObjectInfo> getJVMObjectInfo(long pid, String regex, Integer headCount) throws IOException
public static Map<String,TPerformance.ObjectInfo> getJVMObjectInfo(String regex, int headCount)
pid
: 进程 Id。regex
: 对象匹配字符串。headCount
: 返回的对象数。返回值
: 虚拟机中的对象信息。
13.2.8 获取当前 JVM 线程信息描述
public static List<Map<String,Object>> getThreadDetail(String state, boolean withStack)
state
: 线程状态, nul,返回所有状态的线程。boolean
: 是否包含堆栈信息。返回值
: 线程信息集合。
13.2.9 获取JVM信息
public static Map<String,Object> getJVMInfo()
返回值
: JVM 信息的 Map。
13.2.10 获取指定进程的 GC 信息
public static Map<String, String> getJVMGCInfo(long pid)
pid
: 进程 Id。返回值
: GC信息。