【Java开源代码栏目提醒】:以下是网学会员为您推荐的Java开源代码-TextControlJVM.java,希望本篇文章对您学习有所帮助。
package com.zf.s11;//创建一个包
import java.lang.management.ClassLoadingMXBean;//引入类
import java.lang.management.CompilationMXBean;
import java.lang.management.GarbageCollectorMXBean;
import java.lang.management.ManagementFactory;
import java.lang.management.MemoryMXBean;
import java.lang.management.OperatingSystemMXBean;
import java.lang.management.RuntimeMXBean;
import java.lang.management.ThreadMXBean;
import java.util.List;
public class TextControlJVM {// 操作通过MXBean可以管理和监视虚拟机的类
public static void showMemoryMXBean() {// 操作Java虚拟机的内存系统的管理接口MemoryMXBean
MemoryMXBean instance = ManagementFactory.getMemoryMXBean();// 获得单一实例
System.out.printf("%s%n", instance.getClass().getName());// 获得MemoryMSBean的类名称
System.out.printf("%s: %s%n", "HeapMemoryUsage", instance
.getHeapMemoryUsage());// 显示用一对象分配的堆的当前内存使用量
System.out.printf("%s: %s%n", "getNonHeapMemoryUsage", instance
.getNonHeapMemoryUsage());// 返回 Java 虚拟机使用的非堆内存的当前使用量
instance.gc(); // 运行垃圾回收器
}
public static void showClassLoadingMXBean() { // 操作Java
// 虚拟机的类加载系统的管理接口ClassLoadingMXBean
ClassLoadingMXBean instance = ManagementFactory
.getClassLoadingMXBean(); // 获得单一实例
System.out.printf("%s%n", // 获得ClassLoadingMXBean的类名称
instance.getClass().getName());
System.out.printf("%s: %s%n", "LoadedClassCount", // 返回当前加载到 Java 虚拟机中的类的数量
instance.getLoadedClassCount());
System.out.printf("%s: %s%n", "TotalLoadedClassCount",
instance.getTotalLoadedClassCount());// 返回自 Java 虚拟机开始执行到目前已经加载的类的总数
System.out.printf("%s: %s%n", "UnloadedClassCount",
instance.getUnloadedClassCount());// 返回自 Java 虚拟机开始执行到目前已经卸载的类的总数
}
public static void showThreadMXBean() {//操作Java 虚拟机线程系统的管理接口ThreadMXBean
ThreadMXBean instance = ManagementFactory.getThreadMXBean();// 获得单一实例
System.out.printf("%s%n", instance.getClass().getName());// 获得ThreadMXBean的类名称
System.out.printf("%s: %s%n", "ThreadCount",
instance.getThreadCount());// 返回活动线程的当前数目,包括守护线程和非守护线程。
System.out.printf("%s: %n", "Thread IDs");// 返回活动线程 ID
long[] ids = instance.getAllThreadIds();//将返回的活动线程ID放到数组中
for (long id : ids) {//循环数组显示活动线程ID
System.out.printf("%s; ", id);
}
System.out.println();
System.out.printf("%s: %s%n", "DaemonThreadCount",
instance.getDaemonThreadCount());// 返回活动守护线程的当前数目
System.out.printf("%s: %s%n", "PeakThreadCount",
instance.getPeakThreadCount());// 返回自从 Java 虚拟机启动或峰值重置以来峰值活动线程计数
System.out.printf("%s: %s%n", "CurrentThreadCpuTime",
instance.getCurrentThreadCpuTime());// 返回当前线程的总 CPU 时间
System.out.printf("%s: %s%n", "CurrentThreadUserTime",
instance.getCurrentThreadUserTime());// 返回当前线程在用户模式中执行的 CPU 时间
}
public static void showRuntimeMXBean() {//操作Java 虚拟机的运行时系统的管理接口RuntimeMXBean
RuntimeMXBean instance = ManagementFactory.getRuntimeMXBean();// 获得单一实例
System.out.printf("%n%s%n", instance.getClass().getName());// 获得RuntimeMXBean的类名称
System.out.printf("%s: %s%n", "BootClassPath",
instance.getBootClassPath());// 返回由引导类加载器用于搜索类文件的引导类路径
System.out.printf("%s: %s%n", "ClassPath",
instance.getClassPath());// 返回系统类加载器用于搜索类文件的 Java 类路径
System.out.printf("%s%n", "InputArguments");
List<String> args = instance.getInputArguments();//获得JVM输入参数放入列表
for (String arg : args) {//循环显示输入参数
System.out.printf("%s; ", arg);
}
System.out.printf("%s: %s%n", "LibraryPath",
instance.getLibraryPath());// 返回 Java 库路径
System.out.printf("%s: %s%n", "ManagementSpecVersion",
instance.getManagementSpecVersion());// 返回正在运行的 Java 虚拟机实现的管理接口的规范版本
System.out.printf("%s: %s%n", "Name", // 返回表示正在运行的 Java 虚拟机的名称
instance.getName());
System.out.printf("%s: %s%n", "SpecName",
instance.getSpecName());// 返回 Java 虚拟机规范名称
System.out.printf("%s: %s%n", "SpecVendor",
instance.getSpecVendor());// 返回 Java 虚拟机规范供应商
System.out.printf("%s: %s%n", "SpecVersion",
instance.getSpecVersion());// 返回 Java 虚拟机规范版本
System.out.printf("%s: %s%n", "VmName",
instance.getVmName());// 返回 Java 虚拟机实现名称
System.out.printf("%s: %s%n", "VmVendor",
instance.getVmVendor());// 返回 Java 虚拟机实现供应商
System.out.printf("%s: %s%n", "VmVersion",
instance.getVmVersion());// 返回 Java 虚拟机实现版本
System.out.printf("%s: %s%n", "StartTime",
instance.getStartTime());// 返回 Java 虚拟机的启动时间
System.out.printf("%s: %s%n", "Uptime",
instance.getUptime());// 返回 Java 虚拟机的正常运行时间
}
public static void showOperatingSystemMXBean() {//操作java操作系统的管理接口OperatingSystemMXBean
OperatingSystemMXBean instance = ManagementFactory
.getOperatingSystemMXBean();// 获得单一实例
System.out.printf("%s%n", // 返回操作系统的架构
instance.getClass().getName());// 获得OperatingSystemMXBean的类名称
System.out.printf("%s: %s%n", "Arch",
instance.getArch());// 返回 Java 虚拟机可以使用的处理器数目
System.out.printf("%s: %s%n", "AvailableProcessors", instance
.getAvailableProcessors());
System.out.printf("%s: %s%n", "Name",
instance.getName());// 返回操作系统名称
System.out.printf("%s: %s%n", "Version",
instance.getVersion());// 返回操作系统版本
}
public static void showCompilationMXBean() {//操作Java 虚拟机的编译系统的管理接口CompilationMXBean
CompilationMXBean instance = ManagementFactory
.getCompilationMXBean();// 获得单一实例
System.out.printf("%n%s%n", // 获得CompilationMXBean的类名称
instance.getClass().getName());
System.out.printf("%s: %s%n", "Name",
instance.getName());// 返回即时 (JIT) 编译器的名称
System.out.printf("%s: %s%n", "TotalCompilationTime",
instance.getTotalCompilationTime());// 返回在编译上花费的累积耗费时间的近似值
}
public static void showGarbageCollectorMXBean() {//操作Java 虚拟机的垃圾回收的管理接口GarbageCollectorMXBean
List<GarbageCollectorMXBean> instances = ManagementFactory
.getGarbageCollectorMXBeans();// 获得
上一篇:
TextControl.java
下一篇:
爱情只不过就是,爱与不爱