一、背景
mac下idea卡顿
二、原因
赋予idea的内存太小了,需要给他更大的内存
三、解决方法
1、修改idea.vmoptions 配置文件。
help --Edit Custom VM Options
2、修改文件
这是我修改之前的:
-Xms128m
-Xmx750m
-XX:ReservedCodeCacheSize=512m
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=2
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-ea
-Dsun.io.useCanonCaches=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof
这是我修改之后的:
-Xms1024m
-Xmx2048m
-XX:ReservedCodeCacheSize=1024m
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-XX:CICompilerCount=2
-Dsun.io.useCanonPrefixCache=false
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Djdk.attach.allowAttachSelf=true
-Dkotlinx.coroutines.debug=off
-Djdk.module.illegalAccess.silent=true
-XX:+UseCompressedOops
-Dfile.encoding=UTF-8-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof
主要参数及说明
说明:1.Xms128m--最小内存2.Xmx750m--最大内存3.预留代码缓存的大小4.UseConcMarkSweepGC--设置年老代为并发收集-XX:+UseG1GC 设置垃圾回收为G1模式
这里我保留了G1的垃圾回收方式。
-XX:+UseG1GC
据说G1垃圾回收是目前的主流
四、参考
Mac下IDEA卡顿解决方案 - 未月廿三 - 博客园
这个文章写的很棒,推荐一下。