使用 ASP.NET 創建一個線程的實現方法其實非常簡單,只需將其聲明並為其提供線程起始點處的方法委托即可實現。創建新的線程時,需要使用 Thread 類,Thread 類具有接受一個 ThreadStart 委托或 ParameterizedThreadStart 委托的構造函數。該委托包裝了調用 Start 方法時由新線程調用的方法。創建了Thread類 的對象之後,線程對象已存在並已配置,但並未創建實際的線程,這時,只有在調用Start方法後,才會創建實際的線程。
ASP.NET的Start方法用來使線程被安排進行執行,它有兩種重載形式,下面分別介紹。
(1)導致操作系統將當前實例的狀態更改為ThreadState.Running,語法如下。
public void Start ()
(2)使操作系統將當前實例的狀態更改為ThreadState.Running,並選擇提供包含線程執行的方法要使用的數據的對象。語法如下。
public void Start (Object parameter)
parameter:一個對象,包含線程執行的方法要使用的數據。
注意:如果線程已經終止,就無法通過再次調用Start方法來重新啟動。
例如: 創建一個控制台應用程序,其中自定義一個靜態的void類型方法createThread,然後在Main方法中通過實例化Thread類對象創建一個新的線程,然後調用Start方法啟動該線程。具體代碼如下:
static void Main(string[] args) { Thread myThread; //聲明線程 //用線程起始點的ThreadStart委托創建該線程的實例 myThread = new Thread(new ThreadStart(createThread)); myThread.Start();//啟動線程 } public static void createThread() { Console.Write("創建線程"); }
注意:線程的入口(本例中為createThread)不帶任何參數。