2012-07-05 177 views
35

在我的多核機器上,Eclipse使用100%至250%的CPU功率,即使在新的普通安裝和空工作空間上閒置時也是如此。實際做事情時,它會變得緩慢而沒有反應。空閒時Eclipse中的CPU使用率高

我已經嘗試設置內存設置如下建議:Eclipse uses 100 % CPU randomly。這沒有幫助。我還嘗試了不同的Java版本,即OpenJDK和Oracle Java 7,以及Eclipse版本的Juno和Indigo。我在Ubuntu 12.04 LTS上。

,當我關閉Eclipse的Java進程的另一個也許不相關的問題還停留超過200%的CPU使用率開放,需要手動殺死。

+0

哪個版本的eclipse和哪個版本的java? – 2012-07-05 14:26:23

+0

聽起來像一個糟糕的插件,最近安裝了哪些插件? – shem 2012-07-05 14:27:24

+0

也許jvisualvm可以爲你提供一些線索。 – shem 2012-07-05 14:28:33

回答

10

我對插件有這個問題,但從來沒有與Eclipse本身。

你可以嘗試去Help > About Eclipse > Installation details和禁用插件逐一進行調試。

+4

需要注意的是,您不會通過Eclipse 4.2.2 Juno版本中的安裝細節「禁用」插件,只能卸載它們並重新啓動Eclipse。話雖如此,一旦我卸載了所有的Mylyn插件+ Subclipse Mylyn連接器,我的Mac OS X Eclipse Juno安裝就從使用100%以上的CPU(所有時間!)變成幾乎沒有任何東西。感謝您的建議! – 2013-03-12 20:01:13

+0

卸載SVN-Mylin連接器似乎對我的情況有所幫助 – xamde 2013-03-27 13:13:56

9

我見過只有當垃圾收集瘋了,因爲分配的內存真正達到了虛擬機配置的最大內存限制這種行爲。如果你有一個大的Eclipse安裝,你的第一步應該始終是increase the memory settings in the eclipse.ini

還請激活窗口 - >首選項 - >常規 - >顯示堆狀態。它會告訴你Eclipse當前使用了多少內存(在狀態行中)。如果達到允許的最大值並且不再下降(即垃圾收集器無法清理未使用的對象),那麼這正是我上面描述的指示。

編輯:這也將是很好的瞭解你用什麼Eclipse的包,因爲這些包含在默認情況下不同的插件。經典,建模,Java EE開發人員......?

+0

謝謝,我的Mac顯示80%的CPU只是坐在那裏。檢查出來,它保持從大約490mb - > 508mb,然後回落下來..做出改變,並重新開始日食,現在閒置在3.5%cpu ..謝謝。 – Chrispix 2013-04-06 17:25:48

19

我今天有同樣的問題,而它竟然是佔用的CPU索引線程。我最近在一個項目中添加了很多文件,並忘記了它。我意識到其他任何人都不可能有這個問題,但發佈我如何調查它可能是有用的。

我在基於eclipse Juno的STS上運行Ubuntu 12.10。在命令行

  1. 啓動Eclipse,並將輸出重定向到一個文件,這樣我們就可以得到一個線程轉儲
  2. 它平靜下來了一下,然後得到的CPU使用率每個線程的列表:PS -mo'pid lwp stime time pcpu'-C java。下面是我的標識CPU餓的線程輸出的一個樣本:

    PID LWP STIME TIME%CPU

    6974 - 07:42 0時15分51秒133

    7067 07:42 00:09: 49 86.1

  3. 將線程ID(在我的情況下爲7067)轉換爲十六進制0x1b9b(例如在命令行中使用:printf「0x%x \ n」7067)

  4. 使用kill -3:kill -3 6974執行java進程的線程轉儲。輸出保存在重定向stdout的文件中你開始蝕

  5. 打開文件並查找線程的十六進制ID:

    「鏈接索引延遲寫入-10」 PRIO = 10 TID = 0x00007f66b801a800 NID = 0x1b9b可運行[0x00007f66a9e46000]

    java.lang.Thread.State:RUNNABLE

    在com.ibm.etools.references.internal.bplustree.db.ExtentManager $ WriteBack.r

+17

檢查進程,跟蹤惡意線程,讀取十六進制地址......聽起來像讓Eclipse正常工作的典型日子。 – 2015-01-29 20:07:39

+1

這就是我的。我犯了一個褻瀆的錯誤,提取我的項目目錄中的一個,Eclipse有動脈瘤。 – Gary 2015-10-12 04:27:35

+0

在eclipse中爲你做所有事情的'一鍵式功能'會很好:-)輸出結果應該是:'卸載插件XYZ,它會讓Eclipse變慢! – Tarator 2016-03-25 08:56:24

0

正面臨着同樣的問題,已通過以下在Eclipse VM參數,它爲我工作得很好。

-Xmx1300m -XX:PermSize =256米 -XX:MaxPermSize參數=256米

0

卸載插件Mylyn的固定問題,我和性能提升是如此劇烈,我張貼的答案,6年老問題。

轉至Help->About Eclipse->Installation Details->Installed Software 並卸載您所知道的所有插件您未使用。我只卸載mylyn插件,它爲我做了一個奇蹟。