合理使用Intellij Idea,提高開發效率,避免內存溢出打賞

最近使用Intellij idea(phpstorm、webstorm、pycharm、rubymine等類似)開發的時候,經常遇到內存被占滿,導致異常卡頓,一開始總以為是自己程序內存泄露,后面發現即使不啟動自己的項目,只是單純的開發,依然會出現內存占滿甚至溢出的情況。

最后,實在受不了,在各大技術網站上搜羅相關文章,都說修改Intellij idea默認的vm配置文件即可增大使用內存,比如,將bin目錄下的idea.exe.vmoptions文件內由
-server
-Xms128m
-Xmx512m
-XX:MaxPermSize=250m
-XX:ReservedCodeCacheSize=150m
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djsse.enableSNIExtension=false
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
修改為
-server
-Xms128m
-Xmx1024m
-XX:MaxPermSize=250m
-XX:ReservedCodeCacheSize=150m
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djsse.enableSNIExtension=false
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
當然,這需要你有足夠多的內存,但是實際情況證明(如果你的系統是64bit的,在安裝后bin目錄下會有idea.exe和idea64.exe,而快捷方式默認指向idea.exe),如果修改了默認的512m,修改后第一次啟動確實會生效,但是啟動完畢之后就會自動替換為之前的配置,嘗試了很多次(包括重裝Intellij idea),都是一樣的問題,最近無意間試了試啟動64bit的idea64.exe,發現內存默認是750m,修改為更大的,再次啟動,發現依然正常,不會替換還原為750m,嘗試多次后決定把快捷方式指向idea64.exe,最終解決了我的問題。

當然,長時間運行還是會越來越多內存占用,但至少開著Intellij idea一整天是不會出現內存溢出導致假死了。

另外提一點就是,這里idea64.exe必須條件不僅僅是需要系統為64bit,你還得同時安裝了64bit的jdk,這樣才能正常使用,至于32bit的系統,遇到內存占滿以及溢出的情況,就依然嘗試修改上面提示內容即可(記得在公司好像是32bit的系統,也不經常出現內存占滿),個人猜想,可能Intellij idea檢測到系統為64bit,就建議安裝64bit的jdk,然后使用64bit的Intellij idea引導來啟動,但僅為猜測,由于英文水平有限,很多文章沒有心情去細看,尚不清楚具體產生原因,或者Intellij idea效果本來就是如此,大家如果有了解到更深層級的原因及避免方案,還原指教。

合理使用Intellij Idea,提高開發效率,避免內存溢出
文章《合理使用Intellij Idea,提高開發效率,避免內存溢出》二維碼
  • 微信打賞
  • 支付寶打賞

已有4條評論

  1. 微商

    2016-09-14 15:12 回復
  2. 夜盡迗明

    2016-08-15 10:58 回復
  3. zhou

    看來這文章,馬上到任務管理器下看了一下idea的線程,發現我一直都是在用32位,把idea14關閉,到bin下重啟idea64.exe果然還是第一次啟動……

    2015-12-03 16:36 回復

(必填)

(必填)

(可選)

黑龙江22选5开奖