-1
我正在開發windows窗體應用程序。我正在使用單獨的線程與串行端口進行通信。在按鈕單擊我關閉串口並中止使用Thread.Abort()
線程。但我越來越如何在c中安全關閉串口#
線程被中止異常。
private void button1_Click(object sender, EventArgs e)
{
Thread1.Abort();
if (isPortOpened)
{
serialPort1.DataReceived -= DataReceivedHandler;
serialPort1.Close();
}
}
執行結束在'finally'塊 –
'Thread.Abort'被顯式調用。你能指望什麼?你應該[永遠永遠不會永遠***調用'Thread.Abort'](http://stackoverflow.com/questions/3632149/question-about-terminating-a-thread-cleanly-in-淨)。真。你應該發信號給線程完成,然後調用'Thread1.Join'來等待,直到它完成。 – spender
嘗試刪除以下行:'Thread1.Abort();'。一旦刪除,不會再放回。 –