2015-11-17 53 views
2

我正在使用jconsole(以及TDA.jar插件)執行遠程tomcat 6服務器的線程轉儲。 我看到很多處於等待狀態的TP-Processorxx(90個線程)。找到下面的線程轉儲處於等待狀態的TP-Processorxx

"TP-Processor86" nid=197 state=WAITING 
    - waiting on <0x20afbfdd> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable) 
    - locked <0x20afbfdd> (a org.apache.tomcat.util.threads.ThreadPool$ControlRunnable) 
    at java.lang.Object.wait(Native Method) 
    at java.lang.Object.wait(Object.java:485) 
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:662) 
    at java.lang.Thread.run(Thread.java:619) 

我想知道 - 什麼是這些TP處理器線程和他們實際上做了什麼? 由於這些等待線程,是否對性能有任何影響? 這些等待線程是由於某些錯誤的應用程序代碼造成的嗎?

回答

0

如果您瞭解真正感興趣/調試線程轉儲,您可能需要閱讀下面的文章:

https://dzone.com/articles/how-analyze-java-thread-dumps

要回答你的問題,處於等待狀態的線程(與提供的堆棧跟蹤你)通常是無害的。他們只是在等待任務進入隊列。

相關問題