C# 多线程 (Multi-threading) 相关学习资料
為了讓應用程式執行的更有效率,我們通常會採用 非同步程式設計模式 ( Asynchronous Programming Design Patterns ) 或 多執行緒處理 ( Managed Threading ) 的方式進行開發,尤其是多執行緒程式設計一直是許多程式設計師不敢碰或沒機會碰到的技術,我們最近就有個案子(非 Web 專案)就需要用到多執行緒進行開發,以確保程式的執行效能能夠符合客戶需求,以下我列出一些之前整理收集的參考資料,供初學者學習研究之用。
從觀念出發
- 執行緒 (C# 程式設計手冊)
這裡有用 C# 撰寫執行緒的相關說明,從觀念到範例都用,對初學者來說算是的不錯的起點 - Managed 執行緒處理的基本概念
也是一系列從概念出發講解的文章,讓你瞭解執行緒的各個領域知識 - 使用執行緒和執行緒處理
教你如何建立、開始、暫停、繼續和中止執行緒 - Managed 執行緒處理的最佳實施方針
撰寫多執行緒程式是門「藝術」,建議最好看一下這篇,吸收別人的開發經驗。 - 執行緒處理物件和功能
這裡將解說在 .NET Framework 中有哪些於執行緒有關的物件與功能,例如 Thread 類別、ThreadPool 類別、BackgroundWorker 類別、Timer 類別、…以及其他許多相關類別。 - 同步處理原始物件概觀
在執行緒中不外乎要處理許多「同步處理」的需求,這篇文章說明各種同步的情況。
多執行緒範例
- C# .Net Tutorial Multithreading
超簡單的 multi-threading 範例,展示如何利用 lock 陳述式在 Thread 中安全的修改物件內容。 - 執行緒教學課程 ( Threading Tutorial )
用四個簡單的範例帶領你進入 Threading 的世界 - HOW TO:建立和結束執行緒 (C# 程式設計手冊)
- HOW TO:使用執行緒集區 (C# 程式設計手冊)
- HOW TO:同步處理產生者和消費者執行緒 (C# 程式設計手冊)
- 執行緒處理範例
你只要安裝 Visual Studio 2008 就會有的範例,若找不到範例可以參考 尋找範例檔案 說明。
我的 Visual Studio 2008 的範例就放在:
C:\Program Files\Microsoft Visual Studio 9.0\Samples\1033\CSharpSamples.zip
若要從線上下載也可以到 Visual Studio 2008 範例 進行下載 - AutoResetEvent 類別
對於 Thread 之前如何互相等待,這裡的範例我覺得簡單易懂。
電子書
- Threading in C# - Free E-book [ 直接下載 PDF ]
非常優的電子書,可以線上查看也可以下載 PDF 回來列印。
Threading Library
- Wintellect's .NET Power Threading Library
這是由 MSDN Magazine 的知名專欄作家 Jeffrey Richter 所開發的 Threading Library,使用他包過的 Library 可有效簡化 Threading 的開發作業,不過你若沒有執行緒的概念也很難上手就是了。
影音教學
以下有 7 篇 Threading in .NET - Best Practices 的教學影片,由 Intel 提供的,保哥強烈建議初學者可以看看這幾支影片,因為他對 Threading 的觀念講解的非常淺顯易懂!
- Threading in .NET* - Best Practices - 1 of 7 series
- Threading in .NET* - Best Practices - 2 of 7 series
- Threading in .NET* - Best Practices - 3 of 7 series
- Threading in .NET* - Best Practices - 4 of 7 series
- Threading in .NET* - Best Practices - 5 of 7 series
- Threading in .NET* - Best Practices - 6 of 7 series
- Threading in .NET* - Best Practices - 7 of 7 series
其他相關文章