版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014028392/article/details/77198395

最近使用Intellij idea开发的时候,经常遇到内存被占满,导致异常卡顿,一开始总以为是自己程序内存泄露,后面发现即使不启动自己的项目,只是单纯的开发,依然会出现内存占满甚至溢出的情况。

最后,实在受不了,在各大技术网站上搜罗相关文章,都说修改Intellij idea默认的vm配置文件即可增大使用内存,比如,将bin目录下的idea.exe.vmoptions文件内由

-server

-Xms128m

-Xmx512m

-XX:MaxPermSize=250m

-XX:ReservedCodeCacheSize=150m

-ea

-Dsun.io.useCanonCaches=false

-Djava.net.preferIPv4Stack=true

-Djsse.enableSNIExtension=false

-XX:+UseConcMarkSweepGC

-XX:SoftRefLRUPolicyMSPerMB=50

修改为

-server

-Xms128m

-Xmx1024m

-XX:MaxPermSize=250m

-XX:ReservedCodeCacheSize=150m

-ea

-Dsun.io.useCanonCaches=false

-Djava.net.preferIPv4Stack=true

-Djsse.enableSNIExtension=false

-XX:+UseConcMarkSweepGC

-XX:SoftRefLRUPolicyMSPerMB=50

当然,这需要你有足够多的内存,但是实际情况证明(如果你的系统是64bit的,在安装后bin目录下会有idea.exe和idea64.exe,而快捷方式默认指向idea.exe),如果修改了默认的512m,修改后第一次启动确实会生效,但是启动完毕之后就会自动替换为之前的配置,尝试了很多次(包括重装Intellij idea),都是一样的问题,最近无意间试了试启动64bit的idea64.exe,发现内存默认是750m,修改为更大的,再次启动,发现依然正常,不会替换还原为750m,尝试多次后决定把快捷方式指向idea64.exe,最终解决了我的问题。

当然,长时间运行还是会越来越多内存占用,但至少开着Intellij idea一整天是不会出现内存溢出导致假死了。

另外提一点就是,这里idea64.exe必须条件不仅仅是需要系统为64bit,你还得同时安装了64bit的jdk,这样才能正常使用,至于32bit的系统,遇到内存占满以及溢出的情况,就依然尝试修改上面提示内容即可(记得在公司好像是32bit的系统,也不经常出现内存占满),个人猜想,可能Intellij idea检测到系统为64bit,就建议安装64bit的jdk,然后使用64bit的Intellij idea引导来启动,但仅为猜测,由于英文水平有限,很多文章没有心情去细看,尚不清楚具体产生原因,或者Intellij idea效果本来就是如此,大家如果有了解到更深层级的原因及避免方案,还原指教。

    <div style="clear:both; height:10px;"></div>
</div>

如何减少idea的内存消耗的更多相关文章

  1. python 变量作用域 v.__sizeof__() python 深复制 一切皆对象 尽量减少内存消耗

    python 深入理解 赋值.引用.拷贝.作用域 - 江召伟 - 博客园 https://www.cnblogs.com/jiangzhaowei/p/5740913.html a=[1,2,5]b= ...

  2. Android高级之十二讲之如何降低应用内存消耗

    安卓应用的内存往往是有限的,从开始的8M到16M,24M,32M,48M,64M等逐步变大,但内存的变大是由于分辨率的提高导致,并不意味着可以随意声明使用内存,而不及时回收(即使Java有自己的垃圾回 ...

  3. (译)内存沉思:多个名称相关的神秘的SQL Server内存消耗者。

    原文出处:https://blogs.msdn.microsoft.com/sqlmeditation/2013/01/01/memory-meditation-the-mysterious-sql- ...

  4. 一文了解 Redis 内存监控和内存消耗

    Redis 是一种内存数据库,将数据保存在内存中,读写效率要比传统的将数据保存在磁盘上的数据库要快很多.所以,监控 Redis 的内存消耗并了解 Redis 内存模型对高效并长期稳定使用 Redis ...

  5. 如何让手游内存占用更小?从内存消耗iOS实时统计开始

    为什么iOS内存使用过多会崩溃,性能会下降?腾讯游戏学院专家Devlin在本文给了解释,如何让手游内存占用更小?从内存消耗iOS实时统计开始. 一.问题 在之前的手游项目中,内存使用过多,都开始崩溃了 ...

  6. windows下使用adb工具查看android程序cpu和内存消耗情况

    在实际的开发当中,尤其软件运行在一个硬件设备比较差的环境下,对软件占用资源大的问题是开发者们必须要解决的问题,系统比较卡.觉得应该看看程序的cpu和内存消耗 一直以来都在windows下编程,已经习惯 ...

  7. 【百度地图API】多家地图API内存消耗对比测验(带源码)

    原文:[百度地图API]多家地图API内存消耗对比测验(带源码) 任务描述: 啊,美妙的春节结束了.酸奶小妹和妈妈的山西平遥之旅也宣告成功!距离平遥古城7km,有一个同样身为“世界文化遗产”的寺庙,叫 ...

  8. 【百度地图API】今日小年大进步,齐头共进贺佳节——API优化升级上线,不再增加内存消耗

    原文:[百度地图API]今日小年大进步,齐头共进贺佳节--API优化升级上线,不再增加内存消耗 任务描述: 今天是2011年01月26日,小年夜.百度地图API在小年夜献给广大API爱好者一份给力的礼 ...

  9. redis内存消耗详解

    Redis所有的数据都存在内存中,相对于廉价的硬盘,内存资源还是比较昂贵的,因此如何高效利用redis内存变得非常重要. 内存消耗分析 管理内存的原理和方法 内存优化技巧 一.内存消耗 理解redis ...

随机推荐

  1. Spring这棵大树

    目前项目中用的框架大多数都是Spring,一直想找时间对这个框架做一个全面的了解. 今天先以导图的形式画出来Spring都包含的主要模块,即使有些模块目前用不上,但说不定在将来的应用场景时想到Spri ...

  2. JAVA--养成好的编程习惯

    原文地址:http://user.qzone.qq.com/1159340782/2 略微牺牲一些性能,换来更好的可读性和可维护性是好的选择.以下不提倡和提倡的写法仅供参考. 代码中不提倡的写法 序号 ...

  3. Java借助itext pdf生成固定格式pdf的模板工具类

    这里是标题区域 这里是副标题1: 副标题的内容 这里是副标题2: 这里是副标题2的内容 这里是副标题3: 这里是副标题3的内容 序号 表头1 复合表头 表头2 子表头1 子表头2 子表头3 1 居左内 ...

  4. CF573E (平衡树)

    CF573E 题意概要 给出一个长度为\(n\)的数列,从中选出一个子序列\(b[1...m]\)(可以为空) 使得\[ \sum_{i=1}^m{b_i*i}\]最大,输出这个最大值. 其中\(n\ ...

  5. NLTK的探索

    import nltk import random from nltk.corpus import movie_reviews documents = [(list(movie_reviews.wor ...

  6. Mac下升级node到最新版本

    建议先装n,再用n把node升级到最新稳定版: $ npm install -g n $ n stable

  7. ylbtech-自信:自信

    ylbtech-自信:自信 自信心(confidence),在心理学中,与其最接近的是班杜拉(A.Bandura)在社会学习理论中提出的自我效能感 (self-efficacy)的概念,是指个体对自身 ...

  8. python ndarray相关操作:索引

  9. 廖雪峰Python总结4

    面向对象编程 将计算机程序视为一系列的命令集合.包含: 数据 操作数据的函数 Python中,所有的数据类型都可以视为对象. 面向对象特点:封装,继承,多态. 类的函数和普通函数:类的第一个参数永远是 ...

  10. DOM的利用冒泡做的一个小程序

    我们都知道DOM的事件流,有冒泡事件,如何有效的利用冒泡? 优化:应该尽量少的添加事件监听:原理:每添加一个事件监听事件,就会在浏览器中添加一个EventListener,如果数量过多,浏览器只能一个 ...