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 閱讀(402) 評論(0)  編輯  收藏


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


          網站導航:
           
          主站蜘蛛池模板: 鲁山县| 鄯善县| 伊川县| 汶上县| 万山特区| 伊吾县| 庄浪县| 荆门市| 嘉荫县| 抚松县| 陆良县| 广饶县| 安图县| 海晏县| 囊谦县| 文登市| 舞钢市| 勐海县| 东阿县| 商洛市| 敦化市| 娄底市| 三亚市| 克什克腾旗| 缙云县| 丰顺县| 庆城县| 洱源县| 丹阳市| 滁州市| 米易县| 布拖县| 江城| 西城区| 新河县| 拜城县| 从江县| 庐江县| 赞皇县| 曲松县| 五指山市|