我已經實現了一個多線程程序,它涉及爲每個用戶產生一個線程,並執行一些次要的活動(沒有包括數據庫連接在內的窮舉過程)。主線程無限運行,並通過監視文件創建活動來處理其終止。 我的問題是,是否可以直接終止主線程,而無需等待線程完成? (假設線程將自己完成(!),可能是一個錯誤的假設)。終止主線程,但不確保終止它產生的線程
4
A
回答
3
當然。
主線程只是其中一個線程,其終止不會影響其他線程(除非您不使用System.exit()
來停止線程...)。
的主線程只是第一線*)已啓動但它已經沒有多餘的或隱藏的特徵或功能。
*),以保持它的簡單 - 在JVM可能在之前主開始有些內部線程 - 但應用程序有那些線程
3
是無碼,線程的一點是,他們獨立運行。
只有當客戶端線程作爲守護程序線程啓動並且main
是唯一的非守護線程時,它纔會起作用。 (在這種情況下,應用程序在停止時會關閉)
1
是的,通常在大多數應用程序中就是這種情況。主線程通常對於啓動系統是非常有效的,並且之後它可以和平地死亡。
請注意,您並不真正「終止」主線程,而是讓它完成其運行方法。那就好。
相關問題
- 1. 終止線程
- 2. 終止線程
- 3. 線程終止問題(C):最後線程不終止
- 4. 終止Java線程
- 5. Java線程終止
- 6. Java - 終止線程
- 7. SlimDX - 終止線程
- 8. 終止終止所有線程
- 9. Java終止或終止線程
- 10. 線程不會終止
- 11. mtTkinter不會終止線程
- 12. 主線程退出程序終止?
- 13. Python的線程 - 管理線程終止與主線程
- 14. Boost線程終止程序?
- 15. 阻止程序終止的線程
- 16. Python用線程產生線程並在主要完成時終止
- 17. 終止線程池中的線程
- 18. 終止的線程復興
- 19. 的Python:正確終止工作線程
- 20. await在線程池終結並不會終止線程池
- 21. 立即終止線程
- 22. 終止當前線程
- 23. 正常終止線程
- 24. Java線程並未終止
- 25. 如何終止performSelectorInBackground:線程?
- 26. 線程終止(再次...)
- 27. 線程終止在C#
- 28. 如何終止線程
- 29. c#wpf線程沒有正確終止
- 30. 執行程序線程不終止