兩個線程(t1和t2)正在運行。 t1在t2上調用加入。假設t2由於某種異常而死亡,那麼等待線程t1的行爲是什麼,即線程t1將無限期地保持阻塞狀態,或者在一段時間後恢復到可運行狀態......不清楚關於行爲,更具體地說是背後的理由。Java線程的併發性
-4
A
回答
0
1
的Javadoc開始說的Thread.join(long):
此實現使用this.wait電話空調上
this.isAlive
的循環。當一個線程終止時,調用this.notifyAll
方法。
這是描述爲Thread.isAlive():
測試線程是否還活着。如果一個線程已經啓動並且還沒有死亡,那麼這個線程是活着的。
您可以假設線程的實現可以防止在run()
方法中發生異常。因此,在任何情況下,當run方法終止時(無論是否正常或因異常),可以繼續等待join()
的其他線程。
至於理由:這當然是爲了讓你的程序不會陷入無盡的等待狀態。
相關問題
- 1. Java線程併發性
- 2. 線程併發性
- 3. JAVA線程併發
- 4. Java併發性線程錯誤
- 5. Java併發性問題線程vs executorservice
- 6. Java監視器和線程併發性
- 7. 線程的併發性
- 8. Java併發喚醒線程
- 9. Java併發和多線程
- 10. Java線程任務的併發執行
- 11. Java併發性:我可以使用工作線程創建池
- 12. Java併發性,在父線程中訪問套接字
- 13. Java併發性,在父線程中設置標誌
- 14. 如何實現線程併發性在Java中
- 15. 使用Spock測試線程併發性
- 16. Java併發:共享內存線程
- 17. 面向Java多線程併發問題
- 18. Java:大集合和併發線程
- 19. 在java中使用併發線程
- 20. Java線程併發讀取和寫入
- 21. Java套接字併發線程太慢
- 22. Java的多線程,讓線程並行
- 23. Java並行線程
- 24. Android上的Java併發性
- 25. ArrayList上的Java併發性
- 26. Java中的併發性(FX)
- 27. java中的線性方程
- 28. 併發多線程
- 29. Java中的並行線程
- 30. 並行線程和併發
您可以輕鬆地嘗試此操作。 – Maroun
'JDK + IDE = Answer' –
歡迎來到StackOverflow。請閱讀http://stackoverflow.com/about的關於頁面 - 您可以閱讀關於提問的一些簡單規則;其中之一是:「不要問你還沒有試圖找到答案(顯示你的工作!)」。所以,在將來,請先嚐試自己找到答案(例如嘗試和閱讀API文檔)。然後創建問題並告訴我們,你做了什麼(例如閱讀和嘗試)以及爲什麼它沒有解決你的問題/問題(例如,文檔不可理解,測試的行爲如預期)。 –