下面再對此進行詳細描述.
thread類的建構函式有2類:
一種是不帶引數(threadstart 委託) --
public thread(threadstart start);
另一種是帶引數(parameterizedthreadstart 委託) --
public thread(parameterizedthreadstart start);
parameterizedthreadstart 委託簽名:
public delegate void parameterizedthreadstart(object obj);
示例:1. 不帶引數:
// 定義執行緒方法:
private static void threadmain()
// 呼叫:
thread mythread = new thread(threadmain);
mythread.start();
2. 帶引數:
// 定義執行緒方法:
private static void mainthreadwithparameters(object o)
", d.message);
}public struct data
// 呼叫:
var data = new data ;
thread t2 = new thread(mainthreadwithparameters);
t2.start(data); // 傳入引數
3. 通過定義類傳遞引數:
// 定義存放資料和執行緒方法的類:
public class mythread
public void threadmethod()
", this.message); }}
// 呼叫
var obj = new mythread("info");
thread mythread = new thread(obj.threadmethod); //threadstart 委託
mythread.start();
.net框架是c#的執行時類庫,.net是乙個多執行緒的環境。執行緒(thread)是程序中乙個單一的順序控制流程。執行緒是程序中的實體。乙個程序可以有多個執行緒,乙個執行緒必須有乙個父程序。
執行緒一般具有read,blocking和operation三種基本狀態。由三種基本狀態,衍化出五種執行緒的基本操作。首先,derive,執行緒是在程序內派生出來的。其次,schedule,選擇乙個ready的執行緒進入operation狀態。第三,block,如果乙個執行緒在執行過程中需要等待某個事件發生則被阻塞。第四,unblock,如果事件開始,則該執行緒被unblock,進入ready佇列。第五,finish,執行緒結束,它執行過的暫存器上下文及堆疊內容會被釋放。
新執行緒是新產生的執行緒物件,它還沒有分配資源。因此只能用start()或close()方法。
runable狀態就是執行緒在start()方法執行後,得到執行緒所必需資源並且呼叫run()方法執行。
not runable非執行狀態是發生以下事件而進入的狀態,suspend()方法被呼叫,sleep()方法被呼叫,執行緒使用wait()來等待條件變數,執行緒處於i/o等待。
dead是當run()方法返回,或別的執行緒呼叫stop()方法,執行緒進入dead狀態。下邊是thread的兩個簡單例子。
using system;using
system.threading;
public
class
******thread
value",
result.tostring());
} static
void
main()
}
1using
system;
2using
system.threading;34
public
class
threadexample5"
,i);
11 thread.sleep(0
);12}13
}14public
static
void
main()
1524 console.writeline("
main thread:call join(),to wait until threadproc ends.");
25t.join();
26 console.writeline(main thread:threadproc.join has returned.press enter to end program."
);27
console.readline();28}
29 }
C 中如何使用Thread
執行緒是程序中的最小執行單元,多執行緒是指在給定時間內擁有多個執行緒的能力,並且可以排程它們從而在某一時刻處理多個操作,微軟的 net framework 提供了 thread 來幫助我們完成多執行緒開發。thread 程式設計 要想使用 thread,需要在程式中引用 system.threadi...
C 中的多執行緒使用 Thread 類
好文,現在c 已經建議擯棄使用 suspend,resume 暫停 恢復執行緒,也盡量少用 abort方法中斷乙個執行緒.建議使用執行緒的同步手段有 mutex manualresetevent autoresetevent,monitor.下面再對此進行詳細描述.thread類的建構函式有2類 一...
C 中的多執行緒使用 Thread 類
現在c 已經建議擯棄使用 suspend,resume 暫停 恢復執行緒,也盡量少用 abort方法中斷乙個執行緒.建議使用執行緒的同步手段有 mutex manualresetevent autoresetevent,monitor.下面再對此進行詳細描述.thread類的建構函式有2類 一種是不...