Maximum Heap Size 我都调整为 10G ,居然用一段时间后打字都会卡顿?
![]() |
1
lasuar 20 小时 21 分钟前
卡的时候没看内存占用?
|
![]() |
2
valord577 19 小时 49 分钟前 ![]() 具体情况还是得拿出日志和 jvm logs 来分析 以下只是猜想:
1. java 运行期间会做 jit 储存 jit 也有个 size 当这个满了后 会导致卡顿 2. 默认的 gc 在回收内存时 会导致卡顿 下面是我的 idea.vmoptions 仅供参考 -Xms1024m -Xmx2048m -XX:+UseZGC -XX:SoftRefLRUPolicyMSPerMB=0 -Dfile.encoding=UTF-8 -Djava.complier=NONE -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockDiagnosticVMOptions -ea -Dsun.io.useCanonCaches=false -Dsun.java2d.metal=true -Djbr.catch.SIGABRT=true -Djdk.http.auth.tunneling.disabledSchemes="" -Djdk.attach.allowAttachSelf=true -Djdk.module.illegalAccess.silent=true -Dkotlinx.coroutines.debug=off -Dapple.awt.application.appearance=system -Dnosplash=true -XX:ErrorFile=$HOME/Downloads/java_error_in_idea_%p.log -XX:HeapDumpPath=$HOME/Downloads/java_error_in_idea.hprof |
![]() |
3
ugpu 19 小时 30 分钟前
1. GC 回收机制
2. 其他程序占用了硬盘读写 |
4
chenxiankong 18 小时 36 分钟前
1. 更新最新版
2. 禁用 metal ,用 opengl |
5
wsbqdyhm 14 小时 10 分钟前 via iPhone
我也是同款,内存常年 48+,就是 ps+lrc+chrome 十多个标签 wx+其他十来个 app 小应用开着,后台一大堆东西没细看,好像有个 icopy 占用内存很多,准备卸了
|
![]() |
6
qiaofanxing 13 小时 38 分钟前
@valord577 compiler 拼错了吗?
|
![]() |
7
winterbells 5 小时 29 分钟前 via Android
@valord577 应该再加个 NextGeneration
|
![]() |
8
chengyiqun 4 小时 47 分钟前
@valord577 小内存用 ZGC 下不会比 G1 明显优势的吧?
下面是我的 idea.vmoptions 配置参考 # 忽略未识别参数 -XX:+IgnoreUnrecognizedVMOptions # 元空间大小 -XX:MetaspaceSize=512M -XX:MaxMetaspaceSize=1G # 增加堆内存大小 -Xms2g -Xmx6g # 调整代码缓存大小 -XX:InitialCodeCacheSize=512m -XX:ReservedCodeCacheSize=512m # 调整 JIT 编译器的参数 -XX:CICompilerCount=2 -XX:TieredStopAtLevel=1 -XX:MaxInlineLevel=3 -XX:Tier4MinInvocationThreshold=100000 -XX:Tier4InvocationThreshold=110000 -XX:Tier4CompileThreshold=120000 -XX:-DontCompileHugeMethods # 关闭热度衰减 -XX:-UseCounterDecay # 编译阈值,被调用多少次后,就编译为机器码,在 client 下默认是 933 server 默认是 140 -XX:OnStackReplacePercentage=933 #立即分配内存 -XX:+AlwaysPreTouch # int 缓存 -XX:AutoBoxCacheMax=20000 # gc 收集器 # 使用 G1 收集器 -XX:+UseG1GC #G1 开启字符串去重 -XX:+UseStringDeduplication #GC 最大暂停时间(毫秒, 默认 200) #低配置机器( 8GB 内存以下): 设置 200ms 或更高,以减少 GC 的频率,避免频繁触发 #高配置机器( 16GB 内存或以上): 设置为 100ms ,以追求更流畅的用户体验。 #小型项目:100ms 足够,保证交互流畅。 #大型项目(超过 10 万行代码):建议设置为 150ms 到 200ms ,避免频繁的 GC 暂停。 -XX:MaxGCPauseMillis=100 -XX:SoftRefLRUPolicyMSPerMB=50 -XX:+HeapDumpOnOutOfMemoryError -XX:-OmitStackTraceInFastThrow -Dsun.io.useCanonCaches=false -Dsun.java2d.metal=true -Djbr.catch.SIGABRT=true -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 -XX:CompileCommand=exclude,com/intellij/openapi/vfs/impl/FilePartNodeRoot,trieDescend # 解决一些小问题 -Dide.no.platform.update=true -Djava.net.preferIPv4Stack=true -Dfile.encoding=UTF-8 --add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED --add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED |
![]() |
9
wang93wei 4 小时 28 分钟前
@chengyiqun 用 AI 分析了一下这个配置,好像有点问题。
![]() |
![]() |
10
chengyiqun 3 小时 6 分钟前
@wang93wei 有什么问题, 我现在用这个配置, 非常流畅啊
|