共用方式為


等候同步處理技術範例

更新:2007 年 11 月

這個範例說明如何使用 WaitHandle 類別進行執行緒同步處理。WaitHandle 衍生型別 Mutex 會用來強制執行對受保護程式碼區塊的互斥存取。

如需使用這些範例的詳細資訊,請參閱下列主題:

Download sample

若要使用命令提示字元建置範例

  1. 開啟 [命令提示字元] 視窗,並巡覽至此範例的任一程式設計語言的子目錄。

  2. 根據您選擇的程式設計語言,在命令列輸入 msbuild WaitSynchronizationCS.sln 或 msbuild WaitSynchronizationVB.sln。

若要使用 Visual Studio 建置範例

  1. 開啟 [Windows 檔案總管],並巡覽至此範例的任一程式設計語言的子目錄。

  2. 根據您選擇的程式設計語言,按兩下 WaitSynchronizationCS.sln 或 WaitSynchronizationVB.sln 檔案的圖示,在 Visual Studio 中開啟該檔案。

  3. 在 [建置] 功能表上,按一下 [建置方案]。

若要執行範例

  1. 巡覽至新的可執行檔所在的目錄。

  2. 在命令列中輸入 Mutex.exe。

    注意事項:

    這個範例會建置一個主控台應用程式。您必須從主控台視窗啟動,才能檢視其輸出。

備註

這個範例最多可以讓五個非同步方法呼叫佇列。接著每個方法都會等著擁有資源、寫入主控台、休眠,然後再度寫入主控台。

下面幾點簡短說明了此範例所使用的技術和類別:

  • 執行緒同步處理

  • 執行緒處理

    • ThreadPool 撰寫 Managed 程式碼時,建議開發人員盡可能使用 QueueUserWorkItem 方法實作非同步方法呼叫。這個範例使用此方式來執行想爭取成為邏輯資源的程式碼。
  • 委派

如需執行緒和同步處理的詳細資訊,請參閱原始程式碼和 build.proj 中檔案的註解。

請參閱

概念

執行緒和執行緒處理

參考

AutoResetEvent

Delegate

Interlocked

Mutex

System.Threading

ThreadPool

WaitCallback

WaitHandle

其他資源

執行緒處理物件和功能