idea java cpu100_Intellij Idea cpu 100% 卡顿 解决办法

配置文件位置

ac72a14afc24

修改配置文件idea.vmoptions

具体参数配置

#堆栈设置

-Xms4096m

-Xmx4096m

-Xmn3072m

-XX:MetaspaceSize=1024m

-XX:MaxMetaspaceSize=1024m

-XX:+AlwaysPreTouch

-XX:InitialCodeCacheSize=1200m

-XX:ReservedCodeCacheSize=1200m

-XX:+UseCompressedOops

-Dfile.encoding=UTF-8

# 采用何种垃圾回收参数

-XX:+UseConcMarkSweepGC

-XX:ParallelGCThreads=4

-XX:SoftRefLRUPolicyMSPerMB=50

-ea

# JIT 参数

-XX:CICompilerCount=2

-XX:TieredStopAtLevel=1

-XX:MaxInlineLevel=3

-XX:Tier4MinInvocationThreshold=100000

-XX:Tier4InvocationThreshold=110000

-XX:Tier4CompileThreshold=120000

-Dsun.io.useCanonPrefixCache=false

-Djava.net.preferIPv4Stack=true

-Djdk.http.auth.tunneling.disabledSchemes=""

-XX:+HeapDumpOnOutOfMemoryError

-XX:-OmitStackTraceInFastThrow

-Djdk.attach.allowAttachSelf

-Xverify:none

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log

-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof

配置后重新启动idea

其实大部分情况下 不是垃圾回收造成的cpu负载过高 而是由于JIT Compiler 及时编译将class文件编译成本地机器代码占用了大量的cpu资源导致的卡顿

具体请看下图

ac72a14afc24

配置后重新启动idea发现垃圾回收只有一次或者两次

ac72a14afc24

JIT compiler 占用了大量的cpu资源

配置文件中这部分是控制 JIT compiler

-XX:CICompilerCount=2

-XX:TieredStopAtLevel=1

-XX:MaxInlineLevel=3

-XX:Tier4MinInvocationThreshold=100000

-XX:Tier4InvocationThreshold=110000

-XX:Tier4CompileThreshold=120000

ac72a14afc24

其中会看到Hotspot采用的 JIT compiler采用的是混合模式

java -XX:+PrintFlagsFinal -version | grep CompileThreshold

最后希望大家自己打开自己的jvisualVM来查看到底是什么导致了自己的idea卡顿的

顺便说一下

oracle-jdk 自带 jvisualVM

open-jdk 没有的jvisualVM需要自己下载

ac72a14afc24

命令行输入jvisualvm来启动

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值