1. 程式人生 > >c# 多執行緒程式設計

c# 多執行緒程式設計

       我們通常理解的應用程式就是一個*.exe檔案,當執行*.exe應用程式以後,系統會在記憶體中為該程式分配一定的空間,同時載入一些該程式所需的資源,其實這就可以稱為建立了一個程序。而執行緒則只是程序中的一個基本執行單元。程序會包含一個進入此入口的執行緒,我們稱之為主執行緒main。然當在程式處理一個很耗時的任務,如輸出一個大的檔案或遠端訪問資料庫等,此時的窗體介面程式對使用者而言基本像是沒反應一樣,選單、按鈕等都用不了。因為窗體上控制元件的響應事件也是需要主執行緒來執行的,而主執行緒正忙著幹其他的事,控制元件響應事件就只能排隊等著主執行緒忙完了再執行。為了克服單執行緒的這個缺陷,Win32 API可以讓主執行緒再建立其他的次執行緒,但不論是主執行緒還是次執行緒都是程序中獨立的執行單元,可以同時訪問共享的資料,這樣就有了多執行緒這個概念。