C#-多線程的使用Tread

首先是概念,什么是線程?線程是操作系統分配CPU時間的基本單元,在一個進程中可以有多個線程同時執行代碼 。
談一談什么是進程?簡單的說,一個正在運行的應用程序可以視為一個進程,進程間相互獨立,資源不共享,一個進程的運行失敗不會影響另一個進程的運行,一個進程可以啟動多個線程 。
進程入口執行的第一個線程被視為主線程 。在.Net應用程序中 , Main方法作為入口函數,被調用時會啟動一個主線程 。
在任務管理器中可以看到進程和線程的運行數量

C#-多線程的使用Tread

文章插圖
多線程:在宏觀角度來看是多個線程并發執行 。從微觀角度來看,同一時間只能有一個線程執行 。
線程的創建(Tread)using System.Threading;Thread thread=new Thread(ThreadTest);//創建無參數線程Thread thread2=new Thread(ThreadTest2);//創建有參數線程thread.Start();//啟動線程thread2.Start("aaa");//啟動有參線程public void ThreadTest(){return;}//注意:參數的類型必須是Object否則無法作為delegate成為Theard的參數public void ThreadTest(Object obj){return;}同一個線程不可以兩次調用start,會拋出異常根據線程的生命周期來看,只有New狀態的Thread才可以調用Start方法 , 如果已經啟動,那么此線程就不是New狀態了,而是Running狀態
C#-多線程的使用Tread

文章插圖
報錯提醒:No overload for 'method' matches delegate 'delegate'調用的delegate的參數不是Object類型
【C#-多線程的使用Tread】

    推薦閱讀