Process (行程)是程式正在執行的實體
一個 Process 會有一個或多個 Thread (執行緒)
程式語言就是在描述流程
thread 就像是流程目前執行的位置,也可以視作工作的執行者
一般程式執行是 single thread 的,會依程式描述依序執行
也會有 multi thread 程式
Task (任務)是一段可能延遲執行的工作(work),用來產生結果值或是特定的作用。
Thread 則是 Task 的執行者 (worker)
ThreadPool 是 Thread 的集合
有 Task 要執行時會從中分配 Thread 來執行,執行完之後則會還回 Pool
比起產生 Thread 實體,可能從 ThreadPool 啟用 Thread 較可避免建立過多 Thread
System.Diagnostics 操作 Process
System.Threading 操作 Thread
System.Threading.Tasks 操作 Task
沒有留言:
張貼留言