IDEA修改idea64.exe.vmoptions文件以及解決coding卡頓問題
IDEA修改idea64.exe.vmoptions文件及解決coding卡頓
用idea軟件同時打開多個項目時,過個幾天不關閉,就慢慢陷入卡頓的漩渦。
于是網(wǎng)上各種搜索解決方案,目前親測有效的一個方案就是修改idea64.exe.vmoptions
文件中的配置值。
介紹
idea64.exe.vmoptions
是IntelljJ IDEA的可執(zhí)行文件的VM(虛擬機)配置文件,我們可以理解為應用程序的虛擬機配置參數(shù)。
還有一個idea.exe.vmoptions
是針對32位IDEA使用的。一般存放在JetBrains\IntelliJ IDEA 2018.1.2\bin
路徑中。
該文件有別于我們開發(fā)的Java項目的VM參數(shù),Java項目一般是配置在啟動腳本或者直接指定JVM運行參數(shù),該文件對于使用IDEA開發(fā)的Java項目是無效的,只能對于IDEA本身有效哦。
配置詳解
-Xms128m -Xmx750m -XX:ReservedCodeCacheSize=512m -XX:+UseConcMarkSweepGC -XX:SoftRefLRUPolicyMSPerMB=50 -ea -Dsun.io.useCanonCaches=false -Djava.net.preferIPv4Stack=true -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow
參數(shù) | 說明 |
---|---|
-Xms128m | 指定虛擬機堆內(nèi)存初始值大小,最小Java Heap值,默認物理內(nèi)存的1/64,一般設置為相同值較好,避免頻繁對堆內(nèi)存進行擴容和GC帶來的系統(tǒng)開銷 |
-Xmx750m | 指定虛擬機堆內(nèi)存最大值大小,最大Java Heap值,默認物理內(nèi)存的1/4 |
-XX:ReservedCodeCacheSize=512m | 預留保存代碼緩存的內(nèi)存空間大小 |
-XX:+UseConcMarkSweepGC | 老年代使用CMS垃圾回收策略,并發(fā)、標記、清理重置 |
-XX:SoftRefLRUPolicyMSPerMB=50 | 每兆堆空間中最近最少使用的軟引用存活時間為50秒,LRU(Least Recently Used)最近最少使用 |
-ea | eq開啟斷言,-da表示禁止斷言 |
-Dsun.io.useCanonCaches=false | 使用標準緩存 |
-Djava.net.preferIPv4Stack=true | 使用IPV4協(xié)議 |
-XX:+HeapDumpOnOutOfMemoryError | 當堆內(nèi)存溢出時,啟用堆Dump快照 |
-XX:-OmitStackTraceInFastThrow | 忽略異常棧信息,迅速拋出 |
關于IDEA的idea64.exe.vmoptions文件使用的誤區(qū)
我電腦中安裝的是IDEA 2017.2.5 64位版本的,在IDEA安裝目錄下的bin目錄下有一個idea64.exe.vmoptions文件。
如下圖:
該文件的內(nèi)容如下:
我以為修改該文件中的-Xms和-Xmx參數(shù)可以改變程序運行時的堆內(nèi)存大小。但是無論怎么修改都生效不了。
做過如下嘗試
點擊功能欄中Help->Edit Custom VM Options,是的在用戶目錄中產(chǎn)生一份idea64.exe.vmoptions,修改該文件的內(nèi)容——失敗。
在運行配置中新增環(huán)境變量:IDEA64_VM_OPTIONS=C:\Users\Administrator.IntelliJIdea2017.2\config\idea64.exe.vmoptions(如下圖),指定idea64.exe.vmoptions文件的位置——失敗
新增系統(tǒng)變量:IDEA64_VM_OPTIONS=C:\Users\Administrator.IntelliJIdea2017.2\config\idea64.exe.vmoptions(如下圖),指定idea64.exe.vmoptions文件的位置——失敗
通過以上三種方式都無濟于事,查看程序運行時堆內(nèi)存情況并沒有改變
查閱相關資料才知道,idea64.exe.vmoptions針對的是idea環(huán)境,對通過Idea運行的java項目不起作用。
idea本身就是一個 Java 應用,所以也必須運行于 JVM 之上。
此處的 idea64.exe.vmoptions 文件就是用來配置64位的 idea 所使用的 JVM 參數(shù)。
是idea運行時用的配置,并不是項目運行的配置。
可以通過下面方式驗證:
默認-Xmx750m
修改為-Xmx950m
idea64.exe.vmoptions確實生效了。
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
為什么Spring官方推薦的@Transational還能導致生產(chǎn)事故
在Spring中進行事務管理非常簡單,只需要在方法上加上注解@Transactional,那么為什么Spring官方推薦的@Transational還能導致生產(chǎn)事故,本文就詳細的介紹一下2021-11-11使用springboot跳轉(zhuǎn)到指定頁面和(重定向,請求轉(zhuǎn)發(fā)的實例)
這篇文章主要介紹了使用springboot跳轉(zhuǎn)到指定頁面和(重定向,請求轉(zhuǎn)發(fā)的實例),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-12-12java中BigDecimal的介紹及使用教程BigDecimal格式化及BigDecimal常見問題
BigDecimal是Java在java.math包中提供的線程安全的API類,用來對超過16位有效位的數(shù)進行精確的運算,這篇文章主要介紹了java中BigDecimal的介紹及使用,BigDecimal格式化,BigDecimal常見問題,需要的朋友可以參考下2023-08-08