Eclipse随机使用100%CPU

Flo*_*ann 32 eclipse

我的日食有时会非常自发地开始使用100%的CPU.我无法弄清楚为什么它需要那么多CPU使用率.没有像"构建工作区"那样的后台任务.

一段时间后,CPU负载降至0,一切正常.

我在workspace/.metadata/.log文件中找不到与问题相关的任何信息.

有没有人提示如何弄清楚eclipse的哪个部分如此频繁地使用CPU?有没有办法获得eclipse的线程转储?在kill -3Eclipse的过程中没有做任何事情.

Eclipse版本:Galileo JavaEE
操作系统:Linux 2.6.31

sta*_*ker 12

听起来像垃圾收集

您可以尝试更改eclipse.ini中的设置,可能具有更高的Xmx值

--launcher.XXMaxPermSize
256m
-vmargs
-Xms256m
-Xmx1024m
-XX:PermSize=64m
-Xss1M
-server
-XX:+DoEscapeAnalysis
-XX:+UseConcMarkSweepGC
Run Code Online (Sandbox Code Playgroud)

  • 启用"常规"首选项选项"显示堆状态"还可以帮助确定是否导致垃圾收集. (4认同)

Ste*_*nne 8

您可以使用visualvm来分析eclipse,获取堆转储或线程转储,查看正在运行的线程等.

  • 最后我真的可以追踪它了.现在我99%肯定是什么原因导致负荷.它是`org.eclipse.ui.internal.console调用的正则表达式.ConsolePatternMatcher $ MatchJob.run(ConsolePatternMatcher.java:127)`.当我试图清除控制台输出时,eclipse完全没有反应.我将尝试收集有关该问题的更多信息(如控制台输出)并转到eclipse邮件列表.再次感谢Stephen! (2认同)

dab*_*oss 5

如果其他人遇到这个问题,我自己解决了。将选项“自动构建项目”设置为关闭。这应该会删除 Eclipse 使用的大量 CPU。

  • @DominicCerisano 我实际上见过 eclipse 设置(有很多插件膨胀),其中自动构建经常进入某种循环并每隔几秒钟执行一次。不过,这不是一个常见问题,通常自动构建不应该导致这样的问题。 (2认同)
  • @Dominic Cerisano 即便如此 - 在某些情况下需要插件,或者您在低于最低规格的计算机上运行,​​禁用自动构建会加快速度。我并不声称这个答案是最好的,只是它确实解决了我遇到的其他任何问题都没有解决的问题。 (2认同)
  • @DominicCerisano 是的,这是两个有效的解决方案。它们的存在如何使第三个解决方案无效,而后者既不能使用,又可以使用? (2认同)