機器配置:
P4 2.8 GHz 超線程,內(nèi)存 1G
癥狀:
使用Eclipse時,點擊某個按鈕或圖標甚至正在輸入代碼時,整個程序突然失去響應(yīng),菜單欄變白,除了關(guān)閉按鈕,其他地方都沒反應(yīng),在任務(wù)管理器中發(fā)現(xiàn)javaw.exe占用CPU50%(相當于單CPU100%),內(nèi)存占用200多M,且CPU和內(nèi)存占用數(shù)值均停止不動,機器風扇開始轟鳴,再等半天還是這個樣子。點擊“關(guān)閉”按鈕出現(xiàn)“立即結(jié)束”對話框,只能很無奈地強行退出,有時一天碰到10多次,基本失去可用性。
尋找解決方案:
百度、google搜索,一般的解決方案是,調(diào)整啟動參數(shù)-Xms -Xmx,增大堆內(nèi)存,然而,在上述機器上設(shè)置為-Xms512m -Xmx512m,仍然沒效,到失去響應(yīng)的時候占用的內(nèi)存依然是200多M。
看來這個問題需要自己解決了。用命令行方式啟動eclipse:
java -Xms512m -Xmx512m -jar startup.jar
到失去響應(yīng)的時候,發(fā)現(xiàn)命令行里打印出java.lang.OutOfMemoryError: PermGen space,打開workspace/.metadata/.log文件,發(fā)現(xiàn)很多這樣的字符串,把這段話貼到搜索引擎上,發(fā)現(xiàn)很多這種問題,不過一般出現(xiàn)在Tomcat,Weblogic等Web應(yīng)用程序上,沒有人報告過會出現(xiàn)在Eclipse上。解決方案是增加啟動參數(shù):
-XX:MaxNewSize=256m -XX:MaxPermSize=256m
于是在eclipse.ini里把啟動參數(shù)改為:
-Xms512m?-Xmx512m?-XX:MaxNewSize=256m?-XX:MaxPermSize=256m
啟動Eclipse,用了幾天,都沒再出現(xiàn)失去響應(yīng)的癥狀。
關(guān)于MaxPermSize的文章:
CFMX JVM Tuning - The difference between MaxPermSize and Heap Size
P4 2.8 GHz 超線程,內(nèi)存 1G
癥狀:
使用Eclipse時,點擊某個按鈕或圖標甚至正在輸入代碼時,整個程序突然失去響應(yīng),菜單欄變白,除了關(guān)閉按鈕,其他地方都沒反應(yīng),在任務(wù)管理器中發(fā)現(xiàn)javaw.exe占用CPU50%(相當于單CPU100%),內(nèi)存占用200多M,且CPU和內(nèi)存占用數(shù)值均停止不動,機器風扇開始轟鳴,再等半天還是這個樣子。點擊“關(guān)閉”按鈕出現(xiàn)“立即結(jié)束”對話框,只能很無奈地強行退出,有時一天碰到10多次,基本失去可用性。
尋找解決方案:
百度、google搜索,一般的解決方案是,調(diào)整啟動參數(shù)-Xms -Xmx,增大堆內(nèi)存,然而,在上述機器上設(shè)置為-Xms512m -Xmx512m,仍然沒效,到失去響應(yīng)的時候占用的內(nèi)存依然是200多M。
看來這個問題需要自己解決了。用命令行方式啟動eclipse:
java -Xms512m -Xmx512m -jar startup.jar
到失去響應(yīng)的時候,發(fā)現(xiàn)命令行里打印出java.lang.OutOfMemoryError: PermGen space,打開workspace/.metadata/.log文件,發(fā)現(xiàn)很多這樣的字符串,把這段話貼到搜索引擎上,發(fā)現(xiàn)很多這種問題,不過一般出現(xiàn)在Tomcat,Weblogic等Web應(yīng)用程序上,沒有人報告過會出現(xiàn)在Eclipse上。解決方案是增加啟動參數(shù):
-XX:MaxNewSize=256m -XX:MaxPermSize=256m
于是在eclipse.ini里把啟動參數(shù)改為:

啟動Eclipse,用了幾天,都沒再出現(xiàn)失去響應(yīng)的癥狀。
關(guān)于MaxPermSize的文章:
CFMX JVM Tuning - The difference between MaxPermSize and Heap Size