執行緒處理物件和功能
更新:2007 年 11 月
.NET Framework 提供一些物件,可協助您建立及管理多執行緒應用程式。Managed 執行緒是由 Thread 類別所表示;ThreadPool 類別可用來輕鬆建立及管理多執行緒的背景工作。BackgroundWorker 類別會針對與使用者介面互動的工作執行相同的作業;Timer 類別會在定時的間隔時間執行背景工作。
此外,還有許多類別會同步處理執行緒的活動,其中包括 .NET Framework 2.0 版中引入的 Semaphore 和 EventWaitHandle 類別。這些類別的功能會在同步處理原始物件概觀中做比較。
在本節中
Managed 執行緒集區
解說 ThreadPool 類別,這個類別讓您能夠要求執行緒執行工作,而不用自行進行任何的執行緒管理。計時器
說明如何使用 Timer 來指定要在指定時間呼叫的委派 (Delegate)。監視器
解說如何使用 Monitor 類別來同步存取成員,或建置自己的執行緒管理型別。等候控制代碼
描述 WaitHandle 類別,亦即事件等候控制代碼、Mutex 和號誌的抽象基底類別,可用來等候多個同步處理事件。EventWaitHandle、AutoResetEvent 和 ManualResetEvent
描述 Managed 事件等候控制代碼,可藉由發出信號和等候信號來同步處理執行緒活動。Interlocked 作業
說明如何使用 Interlocked 類別來遞增或遞減數值,並在單一不可部分完成的作業 (Atomic Operation) 中儲存此值。Reader-Writer 鎖定
定義實作單一寫入器/多重讀取器語意 (Semantics) 的鎖定。同步處理原始物件概觀
比較提供來鎖定及同步處理 Managed 執行緒之 .NET Framework 類別的功能。
參考
Thread
提供 Thread 類別的參考文件,此類別表示 Managed 執行緒,不論是否來自於 Unmanaged 程式碼,或是否在 Managed 應用程式中建立。BackgroundWorker
啟用與使用者介面互動的背景工作,透過使用者介面執行緒上引發的事件來溝通。
相關章節
- 非同步檔案 I/O
說明 I/O 非同步完成通訊埠如何使用執行緒集區,以要求只有輸出入作業完成時才處理。