• 请不要在回答技术问题时复制粘贴 AI 生成的内容
gibber
V2EX  ›  程序员

如何检查 idea 卡顿的原因

  •  
  •   gibber · Aug 18, 2021 · 3918 views
    This topic created in 1755 days ago, the information mentioned may be changed or developed.

    频繁出现代码敲着敲着就卡住几秒 期间切换出来操作其他程序都正常 cpu 和内存占用都不高 有工具可以检查是什么导致的吗

    19 replies    2021-08-20 13:26:08 +08:00
    OnlyO
        1
    OnlyO  
       Aug 18, 2021
    把启用的插件都一个一个禁掉,排除法试下呢
    AoEiuV020
        2
    AoEiuV020  
       Aug 18, 2021
    我遇到这问题一般是内存 xmx 用光了,频繁 gc 导致的,
    调大 xmx 试试,
    yinusxxxx
        3
    yinusxxxx  
       Aug 18, 2021   ❤️ 3
    idea 也是一个 java 程序,平时怎么排查线上问题就可以怎么排查 idea 的问题
    C02TobNClov1Dz56
        4
    C02TobNClov1Dz56  
       Aug 18, 2021
    先给 idea 4g 内存试试. 我都是给 6g 的.
    Sapp
        5
    Sapp  
       Aug 18, 2021
    我的经常用着没问题,但是挂机放个半天一晚上的,再用的时候滑动都卡的一批,重启就解决了,至今找不到什么原因
    harwck
        6
    harwck  
       Aug 18, 2021
    把内存加到 64G 就能解决了。
    内存占用不高不代表内存够,可能已经开始用 Swap 了
    zhady009
        7
    zhady009  
       Aug 18, 2021
    IDEA 目录下面有个 log 如果出现卡顿会有个 threadDump 可以看一下
    我最近升级 2021.2 遇到了 直接堆加到 8G 就没卡顿了
    gibber
        8
    gibber  
    OP
       Aug 18, 2021
    @AoEiuV020 我分配的是 2g 看右下角的内存占用还不到 1g 先加到 4g 试试吧
    efaun
        9
    efaun  
       Aug 18, 2021
    @OnlyO #1 难道不应该用二分法😒
    Mogugugugu
        10
    Mogugugugu  
       Aug 18, 2021
    帮助->诊断工具
    gibber
        11
    gibber  
    OP
       Aug 18, 2021
    @zhady009 没有 log 和 threadDump 是 2018 版本没有吗
    L5tEU4WX072p5P42
        12
    L5tEU4WX072p5P42  
       Aug 18, 2021 via iPhone
    禁用掉用不着的插件,你的开启加载速度会有明显提高。
    加大 xmx,在加载项目和建立索引 indexing 的时候会加快速度。
    在 indexing 时可以设置选择 share index,跳过为 jdk 建立索引。
    有的输入法在输入中文时会使 idea 卡顿,具体哪个输入法不会卡顿或者卡顿次数少需要自己尝试。
    以上是我摸索出来的经验
    xmh51
        13
    xmh51  
       Aug 18, 2021
    项目开的多的话,保留的越少,速度越快
    gibber
        14
    gibber  
    OP
       Aug 18, 2021
    @Mogamigawa 设置方面都用好久没改过了 插件也没动过 是最近几天才开始出现的卡顿
    gabon
        15
    gabon  
       Aug 18, 2021 via Android
    装阿里的语法检查插件了吗,我之前 idea 卡顿然后用 jstack 分析 idea 进程,发现有很多线程都在执行 classnotfoundexception,调用栈都是 alibaba.p3cxxx,推测是阿里语法插件不兼容,卸了就好了。可以参考这个思路用 jstack 分析一下。
    flavoury
        16
    flavoury  
       Aug 18, 2021
    如果是 2021 的 idea,本来就卡…我回退了,当然我只是提供一个思路,不一定对哈。
    另外 xms,xmx 都挺重要的,如果卡且硬件够的话就弄大一点
    2i2Re2PLMaDnghL
        17
    2i2Re2PLMaDnghL  
       Aug 19, 2021
    @efaun 插件可能存在交叉干扰,你一个个禁才是二分,你要禁一半就是直接开对数了。
    wolfie
        18
    wolfie  
       Aug 19, 2021
    公司机器 16G,算上 swap 已使用都 40G 了。
    reliefe
        19
    reliefe  
       Aug 20, 2021
    同样的情况,Java 程序无法响应基本上都是因为在 GC 。在 vmoption 中打开 GC 日志 tail -f 观察观察 GC 时间和 GC 原因,再做调整。
    ```
    -Xloggc:/Users/xxx/Desktop/idea-gc/gc.log
    -XX:+PrintGCDetails
    -XX:+PrintGCDateStamps
    ```

    我的调整:
    1. 内存增大到 10G,年轻代 5G 。这个可以适当调小,最好不小于 4G 。
    ```
    -Xmx10G
    -Xms10G
    -Xmn5G
    ```

    2. 使用 CMS + ParNew 。G1 用起来太迷了。
    ```
    -XX:+UseConcMarkSweepGC
    -XX:ParallelGCThreads=8
    -XX:ConcGCThreads=7
    ```

    3. metaData 调到 1G 。( 512M 居然不够用)
    ```
    -XX:MetaspaceSize=1G
    -XX:MaxMetaspaceSize=1G
    ```
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1018 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 87ms · UTC 19:19 · PVG 03:19 · LAX 12:19 · JFK 15:19
    ♥ Do have faith in what you're doing.