C# 關閉應用程序時如何關閉子線程

 

   託管線程或者是後臺線程,或者是前臺線程。後臺線程不會使託管執行環境處於活動狀態,除此之外,後臺線程與前臺線程是一樣的。一旦所有前臺線程在託管進程(其中 .exe 文件是託管程序集)中被停止,系統將停止所有後臺線程並關閉。通過設置 Thread.IsBackground 屬性,可以將一個線程指定爲後臺線程或前臺線程。例如,通過將 Thread.IsBackground 設置爲 true,就可以將線程指定爲後臺線程。同樣,通過將 IsBackground 設置爲 false,就可以將線程指定爲前臺線程。從非託管代碼進入托管執行環境的所有線程都被標記爲後臺線程。通過創建並啓動新的 Thread 對象而生成的所有線程都是前臺線程。如果要創建希望用來偵聽某些活動(如套接字連接)的前臺線程,則應將 Thread.IsBackground 設置爲 true,以便進程可以終止。

        一個線程或者是後臺線程或者是前臺線程。後臺線程與前臺線程類似,區別是後臺線程不會阻止進程終止。一旦屬於某一進程的所有前臺線程都終止,公共語言運行庫就會通過對任何仍然處於活動狀態的後臺線程調用 Abort 來結束該進程。
發佈了33 篇原創文章 · 獲贊 4 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章