C#中多線程Tread的使用(推薦)
首先是概念,什么是線程?
線程是操作系統(tǒng)分配CPU時(shí)間的基本單元,在一個(gè)進(jìn)程中可以有多個(gè)線程同時(shí)執(zhí)行代碼。
談一談什么是進(jìn)程?
簡(jiǎn)單的說(shuō),一個(gè)正在運(yùn)行的應(yīng)用程序可以視為一個(gè)進(jìn)程,進(jìn)程間相互獨(dú)立,資源不共享,一個(gè)進(jìn)程的運(yùn)行失敗不會(huì)影響另一個(gè)進(jìn)程的運(yùn)行,一個(gè)進(jìn)程可以啟動(dòng)多個(gè)線程。
進(jìn)程入口執(zhí)行的第一個(gè)線程被視為主線程。在.Net應(yīng)用程序中,Main方法作為入口函數(shù),被調(diào)用時(shí)會(huì)啟動(dòng)一個(gè)主線程。
在任務(wù)管理器中可以看到進(jìn)程和線程的運(yùn)行數(shù)量
多線程:在宏觀角度來(lái)看是多個(gè)線程并發(fā)執(zhí)行。從微觀角度來(lái)看,同一時(shí)間只能有一個(gè)線程執(zhí)行。
線程的創(chuàng)建(Tread)
using System.Threading; Thread thread=new Thread(ThreadTest);//創(chuàng)建無(wú)參數(shù)線程 Thread thread2=new Thread(ThreadTest2);//創(chuàng)建有參數(shù)線程 thread.Start(); //啟動(dòng)線程 thread2.Start("aaa"); //啟動(dòng)有參線程 public void ThreadTest() { return; } //注意:參數(shù)的類型必須是Object 否則無(wú)法作為delegate成為Theard的參數(shù) public void ThreadTest(Object obj) { return; }
同一個(gè)線程不可以兩次調(diào)用start,會(huì)拋出異常
根據(jù)線程的生命周期來(lái)看,只有New狀態(tài)的Thread才可以調(diào)用Start方法,如果已經(jīng)啟動(dòng),那么此線程就不是New狀態(tài)了,而是Running狀態(tài)
報(bào)錯(cuò)提醒:No overload for 'method' matches delegate 'delegate'
調(diào)用的delegate的參數(shù)不是Object類型
到此這篇關(guān)于C#中多線程的使用Tread的文章就介紹到這了,更多相關(guān)C#多線程使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
WPF開發(fā)之UniformGrid和ItemsControl的應(yīng)用詳解
為了簡(jiǎn)化開發(fā),WPF提供了UniformGrid布局和ItemsControl容器,本文以一個(gè)簡(jiǎn)單的小例子,簡(jiǎn)述如何在WPF開發(fā)中應(yīng)用UniformGrid和ItemsControl實(shí)現(xiàn)均勻的布局,希望對(duì)大家有所幫助2024-01-01C#使用正則表達(dá)式過(guò)濾html標(biāo)簽
最近在開發(fā)一個(gè)項(xiàng)目,其中有需求要求我們把一段html轉(zhuǎn)換為一般文本返回,使用正則表達(dá)式是明智的選擇,下面小編給介紹下C#使用正則表達(dá)式過(guò)濾html標(biāo)簽,需要的朋友參考下2016-08-08WPF設(shè)置窗體可以使用鼠標(biāo)拖動(dòng)大小的方法
這篇文章主要介紹了WPF設(shè)置窗體可以使用鼠標(biāo)拖動(dòng)大小的方法,涉及針對(duì)窗口的操作與設(shè)置技巧,具有很好的借鑒價(jià)值,需要的朋友可以參考下2014-11-11解決安裝VS2008無(wú)法更改默認(rèn)路徑的問(wèn)題
這篇文章主要介紹了安裝VS2008無(wú)法更改默認(rèn)路徑的解決方法,需要的朋友可以參考下。2016-06-06分享一個(gè)C#編寫簡(jiǎn)單的聊天程序(詳細(xì)介紹)
這是一篇基于Socket進(jìn)行網(wǎng)絡(luò)編程的入門文章,我對(duì)于網(wǎng)絡(luò)編程的學(xué)習(xí)并不夠深入,這篇文章是對(duì)于自己知識(shí)的一個(gè)鞏固,同時(shí)希望能為初學(xué)的朋友提供一點(diǎn)參考。文章大體分為四個(gè)部分:程序的分析與設(shè)計(jì)、C#網(wǎng)絡(luò)編程基礎(chǔ)(篇外篇)、聊天程序的實(shí)現(xiàn)模式、程序?qū)崿F(xiàn)2015-12-12