thread 類
使用thread類可以建立和控制線程,thread類有如下方法:
start():啟動執行緒;
sleep(int):靜態方法,暫停當前執行緒指定的毫秒數;
abort():通常使用該方法來終止乙個執行緒;
suspend():該方法並不終止未完成的執行緒,它僅僅掛起執行緒,以後還可恢復;
resume():恢復被suspend()方法掛起的執行緒的執行。
基本用法:
靜態的方法:
usingsystem.threading;
namespace
class
program
static
void
main(
string
args)}}
usingsystem.threading;
namespace
class
program
static
void
main(
string
args)}}
為了獲得當前執行緒的名稱,可以使用靜態屬性thread.currentthread,獲取當前執行緒的thread例項,訪問name屬性,進行讀取訪問。
usingsystem.threading;
namespace
class
program}}
定義乙個執行緒類
我們可以將
thread
類封裝在乙個
mythread
類中,以使任何從
mythread
繼承的類都具有多執行緒能力。
mythread
類的**如下:
usingsystem.threading;
namespace
abstract
class
mythread
}class
program:mythread
static
void
main(
string
args)}}
為執行緒傳遞引數
如果需要給執行緒傳遞一些資料,可以採用兩種方式。一種方式是使用帶parameterizedthreadstart委託引數的thread建構函式,另一種是建立乙個定製類,把執行緒的方法定義為例項方法,這樣就可以初始化例項的引數,之後啟動執行緒。
如果使用了parameterizedthreadstart委託,執行緒的入口點必須有乙個object型別的引數,返回型別為void。
usingsystem.threading;
namespace
class
program
static
void
main(
string
args)}}
要注意的是,如果使用的是不帶引數的委託,不能使用帶引數的start方法執行執行緒,否則系統會丟擲異常。但使用帶引數的委託,可以使用thread.start()來執行執行緒,這時所傳遞的引數值為null。
給新執行緒傳送資料的另一種方式是定義乙個類,將執行緒的主方法定義為類的乙個例項方法:
usingsystem.threading;
namespace
class
program
public
void
mythreadmethod()
static
void
main(
string
args)}}
Thread執行緒類
posted on 2011 05 03 10 45 明天陪你看海 閱讀 123 編輯收藏 說明 apartmentstate 獲取或設定此執行緒的單元狀態 currentcontext 獲取執行緒正在其中執行的當前上下文 currentthread 獲取當前正在執行的執行緒 isalive 獲取乙...
Thread執行緒類
posted on 2011 05 03 10 45 明天陪你看海 閱讀 123 編輯收藏 說明 apartmentstate 獲取或設定此執行緒的單元狀態 currentcontext 獲取執行緒正在其中執行的當前上下文 currentthread 獲取當前正在執行的執行緒 isalive 獲取乙...
Thread執行緒類
屬性說明 apartmentstate 獲取或設定此執行緒的單元狀態 currentcontext 獲取執行緒正在其中執行的當前上下文 currentthread 獲取當前正在執行的執行緒 isalive 獲取乙個值,該值指示當前執行緒的執行狀態 managedthreadid 獲取當前託管執行緒的...