[C#.NET][Thread] 執行緒的順序啟動 - Thread.Join方法

Join語意是加入,但跟官網的解釋不太一樣,Thread.Join 方法在官網的解釋是:封鎖呼叫執行緒,直到執行緒結束為止。

沒錯!在這裡它是封鎖的意思,那是封鎖什麼呢?做啥用途的呢?它是用來做順序控制用的;這樣講好了,假設你現在有兩條執行緒名叫a、b要將它做順序啟動, 當a工作完成之後才叫b工作,這時就可以用Thread.Join方法;查了一下網路也有人叫它合併,但總覺得不太合適,總之見人見智,小弟不玩文字遊 戲,對我而言它就是可以用來做順序啟動。

我們來觀察下列程式碼,程式碼出自http://msdn.microsoft.com/zh-tw/library/system.threading.thread.aspx

image

 

當主程式(執行緒a)使用了Join方法後,會等到ThreadProc方法(執行緒b)的工作完成才會再往下一行 Console.WriteLine("Main thread: ThreadProc.Join has returned.  Press Enter to end program.") 執行。

image

 

 

由此一來,Join的功能就如同msdn上解釋的相同了。

posted @ 2014-02-10 15:39  Net-Spider  阅读(252)  评论(0)    收藏  举报