c#中關於多線程的功能定義在System.Threading名字空間中。因此,要使用多線程,必須先聲明引用此名字空間(using System.Threading;)。
啟動線程
顧名思義,“啟動線程”就是新建並啟動一個線程的意思,如下代碼可實現:
Thread thread1 = new Thread(new ThreadStart( Count));
其中的 Count 是將要被新線程執行的方法。
暫停線程
它的意思就是讓一個正在運行的線程休眠一段時間。如 thread.Sleep(1000); 就是讓線程休眠1秒鐘。
刪除線程
在刪除一個線程前最好先判斷它是否還存在(通過 IsAlive 屬性),然後就可以調用 Abort 方法來刪除這個線程。
優先級
這個用不著解釋了。Thread類中hreadPRiority屬性,它用來設置優先級,但不能保證操作系統會接受該優先級。一個線程的優先級可分為5種:Normal, AboveNormal, BelowNormal, Highest, Lowest。具體實現例子如下:
thread.Priority = ThreadPriority.Highest;
掛起線程
Thread類的Suspend方法用來掛起線程,直到調用Resume,此線程才可以繼續執行。如果線程已經掛起,那就不會起作用。
if (thread.ThreadState = ThreadState.Running)
{
thread.Suspend();
}
恢復線程
用來恢復已經掛起的線程,以讓它繼續執行,如果線程沒掛起,也不會起作用。
if (thread.ThreadState = ThreadState.Suspended)
{
thread.Resume();
}