IDEA卡顿问题处理

0,问题描述

IDEA写代码打字的时候卡顿,IDEA菜单栏也卡死开始转圈,大概需要30秒到1分钟恢复,而且卡死频率非常高,试了版本 Ultimate 2021.3和2021.3.1社区版,都有这个问题。

1,判断是内存占用还是CPU占用引起

方案1: 使用mac自带的活动监视器,卡顿的时候看是内存高,还是CPU占用高

IDEA卡顿问题处理_第1张图片

方案2: 使用IDEA自带的内存指示器和活动监视器(推荐)

  • 内存指示器:IDEA右下角打开内存指示器,看卡顿的时候是不是打满了
    IDEA卡顿问题处理_第2张图片
    IDEA卡顿问题处理_第3张图片
    看起来内存占用比较少,问题应该不在这里。

  • 活动监视器:菜单栏-帮助-诊断工具-活动监视器,可以看到各个进程的CPU占用实时变化,观察卡顿时候的情况。

  • IDEA卡顿问题处理_第4张图片
    IDEA卡顿问题处理_第5张图片
    IDEA卡顿问题处理_第6张图片

发现JIT compiler在卡顿的时候占用率升高,有的时候是Plugin Java Bytecode Decompiler升高,不确定具体是哪个。

2,处理方法

网上找到一些方法,主要是针对内存不够用的,调整IDEA最大堆栈大小;另外还有个JIT compiler相关参数的优化,我都试了下:菜单栏,帮助-修改自定义VM选项,设定内存和cpu相关的参数
IDEA卡顿问题处理_第7张图片

# 堆栈设置(主要修改Xmx,应对内存不足的情况)
-Xms256m
-Xmx12288m
-Xverify:none
-XX:+DisableExplicitGC
-XX:ReservedCodeCacheSize=720m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow

# JIT 参数 
# 设置用于编译的编译器线程数
-XX:CICompilerCount=2
# 开启分层编译
-XX:TieredStopAtLevel=1
# 控制最大数量嵌套调用内联
-XX:MaxInlineLevel=3
# 即时编译的东西(没弄懂...)
-XX:Tier4MinInvocationThreshold=100000
-XX:Tier4InvocationThreshold=110000
-XX:Tier4CompileThreshold=120000

发现并没有解决问题,所以猜测Plugin Java Bytecode Decompiler导致的CPU升高,这个关闭掉试下:
preference-插件-已安装:搜索“java bytecode decompiler",取消勾选,确定完成重启,问题解决。
IDEA卡顿问题处理_第8张图片

你可能感兴趣的:(其他,intellij-idea,java,ide)