【JDK】描述应用程序的运行环境的类-Runtime类

  • Post author:
  • Post category:其他


Runtime描述的是运行时的状态,也就是说在整个的JVM之中,Runtime类是唯一一个与JVM运行状态有关的类,并且都会默认提供一个该类的实例化对象。(JDK9就有版本)

由于在每一个JVM进程里面只允许提供有一个Runtime类的对象,所以这个类的构造方法被默认私有化了,所以该类使用的是单例设计模式,并且单例设计模式一定会提供有一个static方法获取本类实例。

在这里插入图片描述

由于Runtime类属于单例设计模式,如果要想获取实例化对象,那么就可以依靠类中的getRuntime()方法完成。

  • 获取实例化对象:public static Runtime getRuntime();
  • 获取本机CPU内核数(决定并发访问量的最佳状态):public native int availableProcessors();

除了以上方法,Runtime里面还提供有以下四个重要的操作方法:

  • 获取最大可用内存空间:public long maxMemory(),默认的配置为本机系统内存的1/4;
  • 获取可用内存空间:public long totalMemory(),默认的配置为本机系统内存的1/64;
  • 获取空闲内存空间:public long freeMemory();
  • 手工进行GC处理:public void gc();

以上方法虽然工作中不常用,但是进行调优时会用到


面试题

:请问什么是GC?如何处理

  • GC(Garbage Collector)垃圾收集器,是可以由系统自动调用的垃圾释放功能,或者使用Runtime中的GC手动调用。



版权声明:本文为weixin_42295814原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。