Java中的Runtime类

Posted kuillldan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中的Runtime类相关的知识,希望对你有一定的参考价值。

Runtime类描述了虚拟机一些信息。该类采用了单例设计模式,可以通过静态方法 getRuntime()获取Runtime类实例。下面演示了获取虚拟机的内存信息:

 1 package Main;
 2  
 3 public class Main
 4 {
 5     public static void main(String[] args) throws Exception
 6     {
 7         Runtime runtime = Runtime.getRuntime();
 8         System.out.println("total memory:"+runtime.totalMemory()/(1024*1024) + "M");
 9         System.out.println("max memory:" + runtime.maxMemory()/(1024*1024) + "M");
10         System.out.println("free memory:" + runtime.freeMemory()/(1024*1024) + "M");
11         System.out.println("Main Done//~~");
12     }
13 }

输出结果:

total memory:230M
max memory:3403M
free memory:226M
Main Done//~~

Runtime类提供gc()方法,用于释放Java虚拟机的一些无用空间。gc是garbage collection的缩写,就是垃圾回收的意思。

 1 package Main;
 2  
 3 public class Main
 4 {
 5     public static void main(String[] args) throws Exception
 6     {
 7         Runtime runtime = Runtime.getRuntime();
 8         runtime.gc();
 9         System.out.println("Main Done//~~");
10     }
11 }

Runtime类可以调用本机的一些可执行程序,并且创建进程。exec(String cmd)方法可以打开一个可执行程序,下面代码演示了打开windows记事本程序并5秒后关闭。

 1 package Main;
 2  
 3 public class Main
 4 {
 5     public static void main(String[] args) throws Exception
 6     {
 7         Runtime runtime = Runtime.getRuntime();
 8         Process process = runtime.exec("notepad");
 9         Thread.sleep(1000*5);
10         process.destroy();
11         System.out.println("Main Done//~~");
12     }
13 }

 

以上是关于Java中的Runtime类的主要内容,如果未能解决你的问题,请参考以下文章

Java之2.System.RunTime类

JAVA APISystem类与Runtime类

17 java通过Runtime和Process类调用外部命令

elasticsearch代码片段,及工具类SearchEsUtil.java

有没有办法关闭代码片段中的命名建议?

java学习之Runtime