我今天有同樣的問題,而它竟然是佔用的CPU索引線程。我最近在一個項目中添加了很多文件,並忘記了它。我意識到其他任何人都不可能有這個問題,但發佈我如何調查它可能是有用的。
我在基於eclipse Juno的STS上運行Ubuntu 12.10。在命令行
- 啓動Eclipse,並將輸出重定向到一個文件,這樣我們就可以得到一個線程轉儲
它平靜下來了一下,然後得到的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
將線程ID(在我的情況下爲7067)轉換爲十六進制0x1b9b(例如在命令行中使用:printf「0x%x \ n」7067)
使用kill -3:kill -3 6974執行java進程的線程轉儲。輸出保存在重定向stdout的文件中你開始蝕
打開文件並查找線程的十六進制ID:
「鏈接索引延遲寫入-10」 PRIO = 10 TID = 0x00007f66b801a800 NID = 0x1b9b可運行[0x00007f66a9e46000]
java.lang.Thread.State:RUNNABLE
在com.ibm.etools.references.internal.bplustree.db.ExtentManager $ WriteBack.r
哪個版本的eclipse和哪個版本的java? – 2012-07-05 14:26:23
聽起來像一個糟糕的插件,最近安裝了哪些插件? – shem 2012-07-05 14:27:24
也許jvisualvm可以爲你提供一些線索。 – shem 2012-07-05 14:28:33