我調試遺留的Java應用程序,並且線程轉儲(通過jstack
獲得)中包含類似下面的一些條目:如何解釋在RUNNABLE但沒有堆棧跟蹤的Java線程?
"Thread-8" prio=10 tid=0x0000000055f2c800 nid=0x49bf runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
就是這樣。沒有堆棧跟蹤。
這是怎麼回事?如何找到在此線程中執行的Java代碼?
我調試遺留的Java應用程序,並且線程轉儲(通過jstack
獲得)中包含類似下面的一些條目:如何解釋在RUNNABLE但沒有堆棧跟蹤的Java線程?
"Thread-8" prio=10 tid=0x0000000055f2c800 nid=0x49bf runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
就是這樣。沒有堆棧跟蹤。
這是怎麼回事?如何找到在此線程中執行的Java代碼?
爲什麼你發佈這個評論而不是答案? – noahlz
線程的名稱完全沒有幫助;他們應該始終正確地命名線程。 – irreputable
@noahz:我對此沒有足夠的信心。我做了一個答案,我們會看看社區是否喜歡它。 –