amp@java

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            99 隨筆 :: 0 文章 :: 228 評論 :: 0 Trackbacks
          機器配置:
          P4 2.8 GHz 超線程,內存 1G

          癥狀:
          使用Eclipse時,點擊某個按鈕或圖標甚至正在輸入代碼時,整個程序突然失去響應,菜單欄變白,除了關閉按鈕,其他地方都沒反應,在任務管理器中發現javaw.exe占用CPU50%(相當于單CPU100%),內存占用200多M,且CPU和內存占用數值均停止不動,機器風扇開始轟鳴,再等半天還是這個樣子。點擊“關閉”按鈕出現“立即結束”對話框,只能很無奈地強行退出,有時一天碰到10多次,基本失去可用性。

          尋找解決方案:
          百度、google搜索,一般的解決方案是,調整啟動參數-Xms -Xmx,增大堆內存,然而,在上述機器上設置為-Xms512m -Xmx512m,仍然沒效,到失去響應的時候占用的內存依然是200多M。
          看來這個問題需要自己解決了。用命令行方式啟動eclipse:
          java -Xms512m -Xmx512m -jar startup.jar
          到失去響應的時候,發現命令行里打印出java.lang.OutOfMemoryError: PermGen space,打開workspace/.metadata/.log文件,發現很多這樣的字符串,把這段話貼到搜索引擎上,發現很多這種問題,不過一般出現在Tomcat,Weblogic等Web應用程序上,沒有人報告過會出現在Eclipse上。解決方案是增加啟動參數:
          -XX:MaxNewSize=256m -XX:MaxPermSize=256m
          于是在eclipse.ini里把啟動參數改為:

          -Xms512m?-Xmx512m?-XX:MaxNewSize=256m?-XX:MaxPermSize=256m

          啟動Eclipse,用了幾天,都沒再出現失去響應的癥狀。

          關于MaxPermSize的文章:
          CFMX JVM Tuning - The difference between MaxPermSize and Heap Size
          posted on 2006-11-02 11:02 amp@java 閱讀(12965) 評論(2)  編輯  收藏 所屬分類: Java common

          評論

          # re: Eclipse啟動參數解決占用CPU 100%,必須“立即結束”的問題 2008-03-07 11:52 cdm
          java -Xms512m -Xmx512m -jar startup.jar
          我的機子是用這個命令行解決的,多謝!  回復  更多評論
            

          # re: Eclipse啟動參數解決占用CPU 100%,必須“立即結束”的問題[未登錄] 2010-12-02 23:03 Echo
          謝謝提供這個資訊  回復  更多評論
            

          主站蜘蛛池模板: 壶关县| 洛阳市| 洮南市| 田林县| 屏山县| 什邡市| 长海县| 化州市| 邻水| 甘德县| 马公市| 敦化市| 老河口市| 吐鲁番市| 威宁| 双江| 双柏县| 江安县| 黄石市| 襄垣县| 阿合奇县| 湘潭县| 福海县| 西华县| 体育| 南丰县| 崇州市| 泽州县| 茌平县| 晋中市| 义马市| 重庆市| 太谷县| 漳平市| 鹤壁市| 焦作市| 基隆市| 滦平县| 灌云县| 沙河市| 宣城市|