Q
關於線程的術語
0
A
回答
0
大多數線程API通過讓操作系統代表您運行由您提供的特定功能來工作。當這個函數最終返回時(通過例如返回語句或者到達其代碼的末尾),操作系統結束該線程。
至於「死」線程 - 這不是我見過的在線程API中使用的術語。
1
在我的理解中,線程基本上是內核數據結構。您可以通過系統API創建和銷燬線程。如果你只是創建一個線程,啓動它的執行,並且它用完了代碼,那麼內核可能會將它置於非執行狀態。在非託管代碼中,您仍然必須釋放該資源。
然後是線程池。在這種情況下,你排隊工作由線程池完成,平臺負責挑選線程並執行你的工作。工作完成後,線程返回到線程池。該平臺負責創建和銷燬線程,以平衡可用線程與工作負載和系統資源之間的關係。
1
從Java 1.3開始,引入了六態線程模型。這包括以下狀態:
- 現成的運行:在創建線程,並等待被挑選由線程調度
- 運行運行:該線程執行。
- 正在等待:線程在等待某些外部處理完成(如I/O)時處於阻塞狀態。
- 睡眠:線程被迫經由
.sleep()
- 阻止睡覺:在I/O:後成品(例如讀取數據的一個字節)將進入狀態1。 開啓同步:獲取鎖定後將進入狀態1。
- Dead(Terminally):線程已完成工作,無法恢復。
今天很少使用「死」這個詞,幾乎完全改爲「終止」。這兩個是相同的。
相關問題
- 1. 關於Linux相關術語的困惑
- 2. 相關的技術術語
- 3. 關於通用方法的術語
- 4. IBM Worklight - 關於Worklight Console中的術語
- 5. 關於線程
- 6. 關於線程
- 7. 關於線程
- 8. 關於Elasticsearch,Logstash和Kibana的非技術術語
- 9. 有關術語UnsafeMutablePointer的destroy()
- 10. 關於多線程的java多線程
- 11. 編程術語
- 12. 關於多線程
- 13. 關於多線程
- 14. 關於多線程
- 15. 用於描述編程語言語法的術語是什麼?
- 16. 關於線程的問題
- 17. 關於線程的困惑
- 18. 關於線程的加入
- 19. 關於線程的問題
- 20. 關於Python中的線程
- 21. 關於.NET中的線程
- 22. 關於Linux中的線程
- 23. 關於c中的線程#
- 24. 各種語言的關鍵編程概念和術語
- 25. 印刷術:關於EM的
- 26. 堆棧相關術語
- 27. WP術語相關數據?
- 28. 編程術語表
- 29. 關於那個變量作用域的東西的javascript術語
- 30. 關於BO Universe Designer中的某些術語的說明