当前位置:  开发笔记 > 编程语言 > 正文

如何减少Eclipse Ganymede的内存使用?

如何解决《如何减少EclipseGanymede的内存使用?》经验,为你挑选了1个好方法。

我使用最近的Ganymede版本的Eclipse,特别是Java EE和Web开发人员的发行版.我已经安装了一些额外的插件(例如Subclipse,Spring,FindBugs)并删除了所有的Mylyn插件.

我没有在Eclipse中做任何特别重要的事情,例如启动应用服务器或连接到数据库,但由于某种原因,经过几个小时的使用后,我发现Eclipse使用的是接近500MB的内存.

有谁知道Eclipse为什么会使用这么多内存(漏洞?),更重要的是,如果我能做些什么来改进这个?



1> GKelly..:

我并不特别了解Eclipse,我使用IntelliJ,它也会受到内存增长的影响(无论你是否正在积极使用它!).无论如何,在IntelliJ中,我无法消除这个问题,但我确实通过使用运行时VM选项减慢了内存增长.您可以尝试在Eclipse中重置这些,看看它们是否有所作为.

您可以在eclipse文件夹中的eclipse.ini文件中编辑VM选项.

我发现(在IntelliJ中)垃圾收集器设置对内存增长的速度影响最大.

我的设置是:

-Xms128m
-Xmx512m
-XX:MaxPermSize=120m
-XX:MaxGCPauseMillis=10
-XX:MaxHeapFreeRatio=70
-XX:+UseConcMarkSweepGC
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing

(有关各个设置的说明,请参见http://piotrga.wordpress.com/2006/12/12/intellij-and-garbage-collection/).正如您所看到的,我更关心的是避免在编辑期间长时间暂停而不是实际内存使用,但您可以将其作为一个开始.


如果要使用新的G1C1垃圾回收,则需要删除-XX:+ CMSIncrementalMode和-XX:+ CMSIncrementalPacing选项,因此最终得到-Xms128m -Xmx512m -XX:+ UnlockExperimentalVMOptions -XX:+ UseG1GC -XX :MaxPermSize = 120m -XX:MaxGCPauseMillis = 10 -XX:MaxHeapFreeRatio = 70
这比我预期的更大(甚至在较新的Eclipse版本中).
推荐阅读
刘美娥94662
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有