2015-07-21 82 views
0

我正在開發VSTO。我有一個耗時很長的過程,所以我需要實現一個停止按鈕來停止過程。所以我創建一個帶停止按鈕的UI窗體,並在我的主進程被調用時在子線程中顯示UI窗體。現在我試圖停止從UI停止按鈕的主要過程,但是,但我試圖關閉所有過程和文件其自我,但我需要停止該過程只有 我已經試過這些關閉過程,但它不能正常工作如何關閉子線程的主線程

Enviorment.Exit(1); 
process.Kill(); 
process.Close(); 
Close(); 
+0

這個問題似乎並不明顯。請嘗試澄清並添加示例(也許截圖)。爲什麼你使用多個線程來處理你的數據?你有什麼嘗試? – xXliolauXx

+0

@xXliolauXx好的,我再寫一次,請審查 –

回答

0

我不知道你爲什麼調用一個線程「進程」,但問題是關於一個子線程,所以我會回答它的線程。

如果您想結束您的線程,請定期測試一個公共布爾,在您的對話框類中定義爲「public volatile bool stopRequested = false;」 如果bool設置爲true,只需使用「return」關鍵字來停止線程。

要從對話框中止線程,只需進入btn_Click事件:「this.stopRequested = true;」

線程現在會意識到使用者希望它停止,並且它會跳轉到「return」行。線程關閉! \ o/