建立執行緒之Thread類和執行緒池

2022-09-08 08:48:12 字數 1669 閱讀 3401

1.thread類

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

using

system.threading;

namespace

public

void

threadmain()

}class

program

static

void main(string

args)

;//設定乙個名為mythread的執行緒,且不是後台執行緒

t1.priority = threadpriority.lowest;//

設定執行緒的優先順序,threadpriority列舉定義乙個值包含:highest,abovenormal,normal,belownormal,lowest(優先順序從高到低排列)

t1.start(); //

啟動執行緒

t1.join();//

在繼續執行標準的 com 和 sendmessage 訊息幫浦處理期間,阻塞呼叫執行緒,直到某個執行緒終止為止。等到t1結束才開始呼叫t2

var t2 = new thread(threadmain2) ;

t2.priority =threadpriority.highest;

t2.start();

//停止t2這個執行緒

console.writeline("

main thread is end!");}}

}

2.執行緒池,一般用於時間較短的任務

using

system;

using

system.collections.generic;

using

system.linq;

using

system.text;

using

system.threading.tasks;

using

system.threading;

namespace

,max i/o threads:

",workthread,iothread);

for (int i = 0; i < 5; i++)

thread.sleep(

30000

);

//執行緒池中的執行緒都是後台執行緒,如果所有前台執行緒結束,後台執行緒就會停止

console.writeline("

main thread over");

}private

static

void worejob(object

state)

:running inside in the pool is thread

", i, thread.currentthread.managedthreadid);//

獲得當前託管執行緒的唯一識別符號

thread.sleep(1000

); }}}

}

多執行緒 Thread類 建立執行緒

package thread 建立執行緒方式一 繼承 thread 類 重寫方法 run 呼叫 start 開啟執行緒 public class onethread extends thread public static void main string args 可以看出,main 方法和 ru...

用Thread類建立執行緒

用thread 類建立執行緒 這是張孝祥老師說的,我覺得應該記下,加深理解 1 要將一段 在乙個新的執行緒上執行,該 在乙個類的run 方法中,並且 run方法所在的類是 thread 類的子類。倒過來看,要實現多執行緒,必須編寫乙個繼承了 thread 類的子類,子類中要覆蓋 thread 類的r...

繼承Thread類建立執行緒類

一 點睛 通過繼承thread類建立執行緒並啟動多執行緒的步驟 1 定義thread的子類,並重寫該類的run 方法,該run 方法的方法體代表了執行緒需要完成的任務。因此run 方法稱為執行緒執行體。2 建立thread子類的例項,即建立子執行緒物件。3 呼叫執行緒物件的start 方法來啟動該執...