我有問題,似乎有一些線程沒有正確終止。當我在調試模式下暫停其中一個線程時,我得到這個列表:線程不能正常結束
Thread [<14> pool-2-thread-1] (Suspended)
<VM does not provide monitor information>
Object.wait(long, int) line: not available [native method]
Thread.parkFor(long) line: 1205
Unsafe.park(boolean, long) line: 325
LockSupport.park(Object) line: 159
AbstractQueuedSynchronizer$ConditionObject.await() line: 2019
LinkedBlockingQueue.take() line: 413
ThreadPoolExecutor.getTask() line: 1013
ThreadPoolExecutor.runWorker(ThreadPoolExecutor$Worker) line: 1073
ThreadPoolExecutor$Worker.run() line: 573
Thread.run() line: 841
在我暫停它之前,它是「運行」而不是掛起。 我怎樣才能找到最好的線程?
那麼,這個列表當然要比實際的代碼更有幫助。 –
我不能在這裏寫下我的整個項目,我甚至不知道這是哪個線程......這就是我想要找出的 – Ginso
1.創建線程時,可以用'setName()'命名它。 2.您應該調查線程的可運行實現在哪些條件下可以返回/終止。如果沒有這樣的條件(或從未滿足),那麼你已經得到了答案。 –