简介
每个Java应用程序都有一个对应的Runtime对象,应用程序可以与所在的Runtime对象进行交互,来查看虚拟机的一些信息或运行情况。
Runtime类是单例的,如下:
public class Runtime {
private static Runtime currentRuntime = new Runtime();
public static Runtime getRuntime() {
return currentRuntime;
}
private Runtime() {}
}
常用方法
基本方法
方法 | 描述 |
---|
static Runtime getRuntime() | 获取Runtime对象 |
行为控制类
方法 | 描述 |
---|
void addShutdownHook(Thread hook) | 添加一个虚拟机关机任务 |
boolean removeShutdownHook(Thread hook) | 移除一个虚拟机关机任务,与addShutdownHook作用相反 |
void exit(int status) | 停止当前正在运行的jvm |
void gc() | 运行垃圾收集器,System.gc()就是调用的Runtime的gc()函数 |
void halt(int status) | 强制停止当前运行的jvm |
系统信息类
方法 | 描述 |
---|
int availableProcessors() | 返回jvm可用的处理器数量 |
long freeMemory() | 返回jvm可用(空闲)内存 |
long maxMemory() | 返回jvm最大内存 |
long totalMemory() | 返回jvm总内存 |
exec
重载的exec()
函数,可以执行指定的参数来达到执行cmd命令的目的。
方法 | 描述 |
---|
Process exec(String command) | 在单独的进程中执行指定的命令 |
Process exec(String command, String[] envp) | 在指定环境的单独进程中执行指定的命令 |
Process exec(String command, String[] envp, File dir) | 在指定环境和工作目录的单独的进程中执行指定的命令 |
Process exec(String[] cmdarray) | 在单独的进程中执行指定的命令和参数 |
Process exec(String[] cmdarray, String[] envp) | 在指定环境的单独的进程中执行指定的命令和参数 |
Process exec(String[] cmdarray, String[] envp, File dir) | 在指定环境和工作目录的单独的进程中执行指定的命令和参数 |