前臺線程與後臺線程

Net的CLR將線程分爲前臺和後臺線程,前臺線程是用戶線程,後臺線程是守候線程。

這兩者的區別就是:應用程序必須運行完所有的前臺線程纔可以退出;而對於後臺線程,應用程序則可以不考慮其是否已經運行完畢而直接退出,所有的後臺線程在應用程序退出時都會自動結束,後臺線程不會阻止進程終止,一旦屬於某一進程的所有前臺線程都終止,公共語言運行庫就會通過對任何仍然處於活動狀態的後臺線程調用   Abort   來結束該進程。  

Thread.IsBackground   設置爲   true,就可以將線程指定爲後臺線程。同樣,通過將   IsBackground   設置爲   false,就可以將線程指定爲前臺線程。

線程的前後臺屬性在線程運行前制定。

    通過創建並啓動新的   Thread   對象而生成的所有線程都是前臺線程。如果要創建希望用來偵聽某些活動(如套接字連接)的前臺線程,則應將   Thread.IsBackground   設置爲   true,以便進程可以終止。  

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章