元件中的多執行緒
BackgroundWorker 元件會實作 System.Threading 命名空間中的部分執行緒功能;BackgroundWorker 元件是實作多執行緒功能的較簡易方法。 如需詳細資訊,請參閱 BackgroundWorker 元件概觀。
多執行緒或無限制執行緒是指應用程式能夠同時執行作業的多個執行緒。 多執行緒應用程式 (Multithreaded Application) 的其中一個範例,是程式能夠在一個執行緒上接收使用者輸入、在第二個執行緒上執行各種複雜計算,並在第三個執行緒上更新資料庫。 在單一執行緒應用程式中,使用者可能需要花費閒置時間等待計算或資料庫更新完成。 在多執行緒應用程式中,這些處理序可在背景中進行以節省使用者的時間。
多執行緒處理對元件程式設計來說是相當強大的工具。 藉由撰寫多執行緒元件,您可建立在背景中執行複雜計算的元件,並同時讓使用者介面 (UI) 保持在可用的狀態以回應使用者輸入。
雖然多執行緒處理可以是強大的工具,然而要正確套用也並非易事。 不當實作多執行緒程式碼可能會降低應用程式效能,或甚至造成應用程式凍結。 下列主題將簡介多執行緒程式設計的一些考量和最佳應用。
.NET Framework 提供元件中多執行緒處理的幾個選項。 System.Threading 命名空間中的功能就是其中一個選項。 事件架構非同步模式是另一個選項。 BackgroundWorker 元件是非同步模式的實作,能夠提供簡易操作元件中封裝的進階功能。
在本節中
- 使用 System.Threading 以多執行緒設計元件程式
描述使用 System.Threading 命名空間建立多執行緒元件。
參考
BackgroundWorker 類別
能夠讓您在不同的專屬執行緒上執行作業。Thread
從 .NET Framework 參考提供語法和成員資訊。
相關章節
使用事件架構非同步模式設計多執行緒程式
描述封裝擁有非同步功能之元件的標準化方式。Multithreading in Visual Basic
提供搭配 Visual Basic 使用多執行緒的各種主題連結。Managed 執行緒處理的最佳實施方針
提供使用 Managed 執行緒功能的方針。
Topic | Location |
---|---|
執行緒處理範例 | C# 範例應用程式 |
執行緒處理範例 | C# 範例應用程式 |