引言
1.理解多線程
2. 線程異步與線程同步
3.創建多線程應用程序
3.1通過System.Threading命名空間的類構建
3.1.1異步調用線程
3.1.2並發問題
3.1.3線程同步
3.2通過委托構建多線程應用程序
3.2.1線程異步
3.2.2線程同步
3.3BackgroundWorker組件
4.總結
引言
隨著雙核、四核等多核處理器的推廣,多核處理器或超線程單核處理器的計算機已很常見,基於多核處理的編程技術也開始受到程序員們普遍關注。這其中一個重要的方面就是構建多線程應用程序(因為不使用多線程的話,開發人員就不能充分發揮多核計算機的強大性能)。
本文針對的是構建基於單核計算機的多線程應用程序,目的在於介紹多線程相關的基本概念、內涵,以及如何通過System.Threading命名空間的類、委托和BackgroundWorker組件等三種手段構建多線程應用程序。
本文如果能為剛接觸多線程的朋友起到拋磚引玉的作用也就心滿意足了。當然,本人才疏學淺,文中難免會有不足或錯誤的地方,懇請各位朋友多多指點。
1.理解多線程
我們通常理解的應用程序就是一個*.exe文件,當運行*.exe應用程序以後,系統會在內存中為該程序分配一定的空間,同時加載一些該程序所需的資源。其實這就可以稱為創建了一個進程,可以通過Windows任務管理器查看這個進程的相關信息,如映像名稱、用戶名、內存使用、PID(唯一的進程標示)等,如圖下所示。
而線程則只是進程中的一個基本執行單元。一個應用程序往往只有一個程序入口,如: