新的起點(diǎn) 新的開始

          快樂生活 !

          通過Runtime獲取當(dāng)前JVM使用的Heap大小

                  一提起如何解決內(nèi)存溢出問題,動輒使用復(fù)雜的監(jiān)控軟件,比如Jprofile等,其實(shí)我們可以通過Runtime來獲得當(dāng)前Heap大小,使用Heap大小。測試如下:

            1.  設(shè)置JVM屬性: -Xms64m -Xmx256m 最小64M 最大使用256M.
            2.  運(yùn)行如下代碼:
          public static void main(String [] args) throws Exception {
            
                   
          int mb = 1024*1024;  
            
                  
          //Getting the runtime reference from system  
                   Runtime runtime = Runtime.getRuntime();  
             
                  System.out.println(
          "##### Heap utilization statistics [MB] #####");  
                 
          // use memory
                  List testList = new ArrayList();
                  
          for(int i =0; i<5000;i++){
                      Thread.sleep(
          1000);
                  
          for(int i1 =0; i1<5000; i1++){
                  testList.add(
          new String[1000]);
                  }

                  System.out.println(
          "Used Memory:"
                       
          + (runtime.totalMemory() - runtime.freeMemory()) / mb+"M");
                  }

                   System.out.println(
          "Free Memory:"   + runtime.freeMemory() / mb+"M");
                   System.out.println(
          "Total Memory:" + runtime.totalMemory() / mb+"M");
                   System.out.println(
          "Max Memory:" + runtime.maxMemory() / mb+"M");

               }



          }
          運(yùn)行結(jié)果如下:
          ##### Heap utilization statistics [MB] #####
          Used Memory:19M
          Used Memory:38M
          Used Memory:57M
          Used Memory:77M
          Used Memory:96M
          Used Memory:115M
          Used Memory:134M
          Used Memory:154M
          Used Memory:173M
          Used Memory:192M
          Used Memory:211M
          Used Memory:230M
          Used Memory:249M
          Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
                  at prepare.NewClass.main(NewClass.java:32)
          Java Result: 1
          成功生成(總時間:15 秒)



          posted on 2009-05-20 21:58 advincenting 閱讀(291) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           

          公告

          Locations of visitors to this pageBlogJava
        1. 首頁
        2. 新隨筆
        3. 聯(lián)系
        4. 聚合
        5. 管理
        6. <2009年5月>
          262728293012
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          統(tǒng)計

          常用鏈接

          留言簿(13)

          隨筆分類(71)

          隨筆檔案(179)

          文章檔案(13)

          新聞分類

          IT人的英語學(xué)習(xí)網(wǎng)站

          JAVA站點(diǎn)

          優(yōu)秀個人博客鏈接

          官網(wǎng)學(xué)習(xí)站點(diǎn)

          生活工作站點(diǎn)

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 綦江县| 乌恰县| 二手房| 临安市| 大石桥市| 申扎县| 罗源县| 沅陵县| 长武县| 郓城县| 大姚县| 牡丹江市| 平度市| 镇远县| 龙山县| 余庆县| 云浮市| 云南省| 镇平县| 木兰县| 阿拉尔市| 沛县| 特克斯县| 白玉县| 夏津县| 长白| 青神县| 兴化市| 错那县| 甘南县| 会泽县| 平顺县| 永泰县| 苍梧县| 宜川县| 图木舒克市| 红河县| 精河县| 辽阳县| 龙山县| 新源县|