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 版权协议,转载请附上原文出处链接和本声明。