日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C#ThreadState屬性分析

C#多線程有很多值得學習的地方,這里我們主要介紹C# ThreadState屬性,包括介紹主線程Main()函數(shù)和線程的優(yōu)先級等方面。

創(chuàng)新互聯(lián)公司客戶idc服務中心,提供鄭州服務器托管、成都服務器、成都主機托管、成都雙線服務器等業(yè)務的一站式服務。通過各地的服務中心,我們向成都用戶提供優(yōu)質(zhì)廉價的產(chǎn)品以及開放、透明、穩(wěn)定、高性價比的服務,資深網(wǎng)絡工程師在機房提供7*24小時標準級技術保障。

主線程Main()函數(shù)

所有線程都是依附于Main()函數(shù)所在的線程的,Main()函數(shù)是C#程序的入口,起始線程可以稱之為主線程。如果所有的前臺線程都停止了,那么主線程可以終止,而所有的后臺線程都將無條件終止。所有的線程雖然在微觀上是串行執(zhí)行的,但是在宏觀上你完全可以認為它們在并行執(zhí)行。

C# ThreadState屬性

這個屬性代表了線程運行時狀態(tài),在不同的情況下有不同的值,我們有時候可以通過對該值的判斷來設計程序流程。C# ThreadState屬性的取值如下:
◆Aborted:線程已停止;
◆AbortRequested:線程的Thread.Abort()方法已被調(diào)用,但是線程還未停止;
◆Background:線程在后臺執(zhí)行,與屬性Thread.IsBackground有關;
◆Running:線程正在正常運行;
◆Stopped:線程已經(jīng)被停止;
◆StopRequested:線程正在被要求停止;
◆Suspended:線程已經(jīng)被掛起(此狀態(tài)下,可以通過調(diào)用Resume()方法重新運行);
◆SuspendRequested:線程正在要求被掛起,但是未來得及響應;
◆Unstarted:未調(diào)用Thread.Start()開始線程的運行;
◆WaitSleepJoin:線程因為調(diào)用了Wait(),Sleep()或Join()等方法處于封鎖狀態(tài);

上面提到了Background狀態(tài)表示該線程在后臺運行,那么后臺運行的線程有什么特別的地方呢?其實后臺線程跟前臺線程只有一個區(qū)別,那就是后臺線程不妨礙程序的終止。一旦一個進程所有的前臺線程都終止后,CLR(通用語言運行環(huán)境)將通過調(diào)用任意一個存活中的后臺進程的Abort()方法來徹底終止進程。

線程的優(yōu)先級

當線程之間爭奪CPU時間時,CPU 是按照線程的優(yōu)先級給予服務的。在C#應用程序中,用戶可以設定5個不同的優(yōu)先級,由高到低分別是 Highest,AboveNormal,Normal,BelowNormal,Lowest,在創(chuàng)建線程時如果不指定優(yōu)先級,那么系統(tǒng)默認為 ThreadPriority.Normal。

給一個線程指定優(yōu)先級,我們可以使用如下代碼:

 
 
 
  1. //設定優(yōu)先級為***  
  2. myThread.Priority=ThreadPriority.Lowest;  

通過設定線程的優(yōu)先級,我們可以安排一些相對重要的線程優(yōu)先執(zhí)行,例如對用戶的響應等等。


文章標題:C#ThreadState屬性分析
當前路徑:http://m.5511xx.com/article/cdgoehp.html