2013-02-20 119 views
2

我知道有很多這方面的問題。我嘗試過但不能得到任何結果。如何終止線程

我在第一次運行時創建一個線程,當我嘗試關閉窗體時,窗體關閉但應用程序(線程)仍在運行。

我不在乎線程會發生什麼。當用戶點擊X按鈕時,我只想要關閉整個應用程序。我試過thread_name.Abort();但沒有任何反應。

+0

你是如何創建的線程可以了? – 2013-02-20 13:21:56

+1

它是一個純粹的CLR應用程序還是與非託管代碼互操作? – Christian 2013-02-20 13:23:54

回答

8

在沒有代碼的情況下,完整的答案很棘手。

我懷疑最簡單的解決方案可能是將線程的IsBackground屬性設置爲true。

從文檔:

線程可以是一個背景線程或前臺線程。後臺線程是相同的前臺線程,除了後臺線程不會阻止終止

2

嘗試設置Thread.IsBackgroundtrue當您創建線程的進程。

如果後臺線程正在運行,則不會終止進程終止。

1

當您將線程聲明爲前臺線程時,應用程序不會停止,因爲線程仍然存在,即使您單擊了「X」。您需要將其設置爲後臺線程。

Thread.IsBackground = true; 

閱讀here