我在我的java應用程序上運行jstack(在tomcat和ubuntu服務器版上運行),因爲它似乎在一段時間後消耗了大量內存。如何找到通過jstack找到的阻塞線程的原因?
因此,與jstack我發現,許多線程似乎被阻止:
控制檯日誌:http://dl.dropbox.com/u/17844821/zeug/threaddumpexception.txt
Threaddump:http://dl.dropbox.com/u/17844821/zeug/threaddump.txt
所以,我知道線程被阻塞但我怎麼才能找出哪些Java類導致這一點,甚至更重要:我如何強制這些線程終止?
任何幫助將不勝感激。
你確定嗎?那裏有很多線索。除此之外,我的應用程序運行時間越來越慢,似乎消耗越來越多的內存(當我在命令行中使用'top'時,我可以看到它)。 – Timo
使用一些grep,sed或其他腳本來過濾來自jstack輸出的內容。或者,使用一些圖形工具(jconsole,...)來分析線程的jvm狀態和內存使用情況。 – apast