新的起點 新的開始

          快樂生活 !

          通過Runtime獲取當前JVM使用的Heap大小

                  一提起如何解決內存溢出問題,動輒使用復雜的監控軟件,比如Jprofile等,其實我們可以通過Runtime來獲得當前Heap大小,使用Heap大小。測試如下:

            1.  設置JVM屬性: -Xms64m -Xmx256m 最小64M 最大使用256M.
            2.  運行如下代碼:
          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");

               }



          }
          運行結果如下:
          ##### 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 閱讀(287) 評論(0)  編輯  收藏


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


          網站導航:
           

          公告

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

          統計

          常用鏈接

          留言簿(13)

          隨筆分類(71)

          隨筆檔案(179)

          文章檔案(13)

          新聞分類

          IT人的英語學習網站

          JAVA站點

          優秀個人博客鏈接

          官網學習站點

          生活工作站點

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 海晏县| 南华县| 凤凰县| 南陵县| 临夏市| 城步| 平舆县| 新龙县| 望城县| 义乌市| 天峻县| 阳山县| 上虞市| 定日县| 锦屏县| 抚宁县| 赤壁市| 贺兰县| 磐安县| 锡林郭勒盟| 天全县| 邵东县| 南木林县| 泉州市| 仪陇县| 尖扎县| 永靖县| 北安市| 宜都市| 崇左市| 景德镇市| 大关县| 武安市| 休宁县| 阳泉市| 巴楚县| 嘉兴市| 宜兰市| 桐城市| 峨眉山市| 吴川市|