lqxue

          常用鏈接

          統計

          book

          tools

          最新評論

          java內存監測

          1、關于Runtime的totalMemory和freeMemory的區別
              很簡單,totalMemory就是目前jvm中的內存總量,這個值是可以變的,最大等于你設定的jvm可用最大內存總量(eg.-Xmx512M表明你的jvm最大內存量就是512M),最小等于你設定的jvm最小內存總量(-Xms128M)。
              freeMomory就是當前jvm中可以用來分配的內存量。

          2、為了檢測一個方法到底是多么的耗費內存,我寫了個線程來監視它,在方法調用之前啟動該線程,調用后停止該線程,線程執行期間會定期的打印出內存情況到控制臺。
             
          public class MemoryListner implements Runnable {
                  
          private boolean stop1;

                  
          public MemoryListner(boolean stop) {
                      
          this.stop1 = stop;
                  }
                  
          public void run() {
                      
          while (!stop1) {
                          
          try {
                              Thread.sleep(
          100);
                          } 
          catch (InterruptedException e) {
                              e.printStackTrace();
                          }
                          System.out.println(Runtime.getRuntime().totalMemory()
          +":"+Runtime.getRuntime().freeMemory());
                      }
                      System.out.println(
          "Complete");
                  }
                 public void stop(){
                    this.stop1 = true;
                 }

              }


          posted on 2007-06-01 08:58 lqx 閱讀(403) 評論(0)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 金山区| 平塘县| 大埔县| 红桥区| 西乌珠穆沁旗| 田东县| 霍城县| 于都县| 凤冈县| 奉节县| 教育| 黔南| 高雄县| 无极县| 化德县| 永宁县| 银川市| 津市市| 闽清县| 吉木乃县| 修文县| 泰兴市| 吴桥县| SHOW| 万载县| 旬邑县| 黄冈市| 石楼县| 台北市| 淅川县| 昌都县| 青田县| 临夏市| 章丘市| 宾阳县| 泾源县| 剑川县| 凤山市| 甘德县| 南木林县| 施甸县|