zoukankan      html  css  js  c++  java
  • 一招解决IDEA启动慢的困扰

    前言

    电脑配置还不错,但是IDEA用了一段时间之后变得非常卡,启动要好几分钟,实在不能忍受。

    解决办法

    1.打开idea的安装位置,进入bin目录下,找到idea64.exe.vmoptions 配置文件

    编辑配置文件,笔者修改的配置内容01如下:

    server
    -Xms2048m
    -Xmx2048m
    -XX:ReservedCodeCacheSize=500m
    -XX:+UseConcMarkSweepGC
    -XX:SoftRefLRUPolicyMSPerMB=50
    -ea
    -Dsun.io.useCanonCaches=false
    -Djava.net.preferIPv4Stack=true
    -Djdk.http.auth.tunneling.disabledSchemes=""
    -XX:+HeapDumpOnOutOfMemoryError
    -XX:-OmitStackTraceInFastThrow

    修改后保存,退出。重新打开IDEA,就能体验到飞一般的感觉了!


    补充:

    有同事尝试后,未生效,解决方法如下:

    直接在IDEA中修改配置信息,打开 idea64.exe.vmoptions 配置文件,在Help -> Edit Custom VM Option...中设置,  如图:

    修改配置,参考上图。

    配置详解

    • -Xms 是最小启动内存参数

    • -Xmx 是最大运行内存参数

    • -XX:ReservedCodeCacheSize 保留代码占用的内存容量参数

    IDEA默认启动配置主要考虑低配置用户,参数不高(默认最低128m,最高512m),导致启动慢,运行不流畅。通常我们工作使用的电脑至少在16G以上,所以可以通过修改最小启动内存参数、最大运行内存参数来提高IDEA的速度。

    这里需要解释一下Xmx和Xms
    
    Java 虚拟机具有一个堆(Heap),堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的,在JVM中堆之外的内存称为非堆内存(Non-heap memory)。
    
    简单的说就是:堆是java代码可及的内存,开发人员写的东西都是堆分配的内存(底层实现除外)。而非堆内存则是JVM自己用的,比如JVM内部处理或优化,垃圾处理,常数池等。
    
    堆的内存分配用-Xms和-Xmx


    堆的内存分配用-Xms和-Xmx:
    -Xms分配堆最小内存,默认为物理内存的1/64;-Xmx分配最大内存,默认为物理内存的1/4。

    非堆内存分配用-XX:PermSize和-XX:MaxPermSize:
    -XX:PermSize分配非堆最小内存,默认为物理内存的1/64;-XX:MaxPermSize分配最大内存,默认为物理内存的1/4。

    建议

    电脑运行内存为8G的建议

    -server
    -Xms512m
    -Xmx1024m
    -XX:ReservedCodeCacheSize=300m
    -XX:+UseConcMarkSweepGC
    -XX:SoftRefLRUPolicyMSPerMB=50
    -ea
    -Dsun.io.useCanonCaches=false
    -Djava.net.preferIPv4Stack=true
    -Djdk.http.auth.tunneling.disabledSchemes=""
    -XX:+HeapDumpOnOutOfMemoryError
    -XX:-OmitStackTraceInFastThrow

    电脑运行内存为16G的建议

    server
    -Xms1024m
    -Xmx2048m
    -XX:ReservedCodeCacheSize=500m
    -XX:+UseConcMarkSweepGC
    -XX:SoftRefLRUPolicyMSPerMB=50
    -ea
    -Dsun.io.useCanonCaches=false
    -Djava.net.preferIPv4Stack=true
    -Djdk.http.auth.tunneling.disabledSchemes=""
    -XX:+HeapDumpOnOutOfMemoryError
    -XX:-OmitStackTraceInFastThrow
  • 相关阅读:
    poj 3415 后缀数组+单调栈
    hdu 3450 后缀数组
    hdu 2774 后缀数组
    后缀数组模板(倍增法)
    hdu 4405 概率dp
    zoj 3329 概率dp
    [日常摸鱼]bzoj2875[NOI2012]随机数生成器-矩阵快速幂
    [日常摸鱼]bzoj1038[ZJOI2008]瞭望塔-半平面交
    [日常摸鱼]bzoj1007[HNOI2008]水平可见直线-半平面交(对偶转凸包)
    [日常摸鱼]bzoj3083遥远的国度-树链剖分
  • 原文地址:https://www.cnblogs.com/djma/p/15693867.html
Copyright © 2011-2022 走看看