zoukankan      html  css  js  c++  java
  • Runtime类

      Runtime类是一个运行时的描述类,在每一个JVM中都存在Runtime类的对象,但是这个类查询文档的时候,是没有构造方法的,因为其在定义的时候将构造方法私有化了。因为其只能有一个实例化对象,那么该类使用的是单例设计模式。那么依然是单例设计模式那么在类的内部一定有一个取得对象的方法,

        1.取得Runtime对象方法,public static Runtime()

       那么取得Runtime类之后最主要的功能是可以用过它来观察当前的内存操作情况,

      取得当前空余内存空间大小:public long freeMemory()

      取得当前可以使用的总空间大小:public long totalMemory()

      取得当前最大内存空间:public long maxMemory()

      执行垃圾处理:public void gc()

    范例:观察一下内存信息的取得

     1 package cn.Tony.demo;
     2 
     3 public class TestDemo {
     4     public static void main(String[] args) throws Exception {
     5         Runtime run=Runtime.getRuntime();
     6         System.out.println("1.MAX="+byteTom(run.maxMemory()));
     7         System.out.println("1.TOTAL="+byteTom(run.totalMemory()));
     8         System.out.println("1.FREE="+byteTom(run.freeMemory()));
     9         String str="";
    10         for(int x=0;x<999;x++){
    11             str+=x;
    12         }
    13         System.out.println("2.MAX="+byteTom(run.maxMemory()));
    14         System.out.println("2.TOTAL="+byteTom(run.totalMemory()));
    15         System.out.println("2.FREE="+byteTom(run.freeMemory()));
    16         run.gc();
    17         System.out.println("3.MAX="+byteTom(run.maxMemory()));
    18         System.out.println("3.TOTAL="+byteTom(run.totalMemory()));
    19         System.out.println("3.FREE="+byteTom(run.freeMemory()));
    20     }
    21     public static double byteTom(long num) {
    22         return (double)num/1024/1024;
    23     }
    24 }

    面试题:什么叫gc?如何处理

      gc(GarbageCollector):垃圾收集器,用于释放无用的空间

      gc有两种处理形式,一种是自动不定期调用,另外是Runtime类中的gc()方法手工调用。 

  • 相关阅读:
    linux命令之sort uniq wc cut
    linux中的sed命令
    find命令
    awk命令
    记录一些运维的零散知识点
    /proc虚拟文件系统
    系统性能查看命令vmstat iostat top
    不得不说的top命令
    解决一个页面多个Jquery冲突问题
    解决"服务器应用程序不可用"的解决办法 服务器应用程序不可用 您试图在此Web服务器上访问的Web应用程序当前不可用
  • 原文地址:https://www.cnblogs.com/Tony98/p/10495606.html
Copyright © 2011-2022 走看看