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 閱讀(12956) 評論(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
          謝謝提供這個資訊  回復  更多評論
            

          主站蜘蛛池模板: 天长市| 来凤县| 鄂托克前旗| 句容市| 乌拉特中旗| 绥德县| 金湖县| 阜阳市| 乌拉特后旗| 漳州市| 镇江市| 丰原市| 简阳市| 无为县| 山西省| 蓝山县| 天长市| 华宁县| 临安市| 谢通门县| 合肥市| 子洲县| 黄浦区| 平顶山市| 舒兰市| 日照市| 德钦县| 高碑店市| 东港市| 将乐县| 新干县| 滨海县| 灌南县| 德安县| 如东县| 德令哈市| 焦作市| 鸡西市| 涿州市| 武宣县| 云霄县|