2
當我關閉串行端口時,當前正在運行的軟件有時會掛起。它的間歇性和90%的時間工作正常,但我顯然有問題。當我ctl + Alt + Break時,它顯示它正在等待serial.Close()。Hang On Serial.Close(),可能的線程問題?
我有很多的數據進出串口被調用到一些形式,所以這是一個線程問題?
當我關閉串行端口時,當前正在運行的軟件有時會掛起。它的間歇性和90%的時間工作正常,但我顯然有問題。當我ctl + Alt + Break時,它顯示它正在等待serial.Close()。Hang On Serial.Close(),可能的線程問題?
我有很多的數據進出串口被調用到一些形式,所以這是一個線程問題?
是的,這可能是這種情況。 See this post。 See also here,這表明使用BeginInvoke而不是Invoke可以解決您的問題。
此外,如果您使用USB串行適配器,則可能會出現驅動程序問題。其中一些司機寫得不好,可能會導致大量問題。
BeginInvoke在我所有的模塊GUI代碼都會太嚇人,所以我使用了您發佈的鏈接中的其他提示。 我生成另一個關閉端口的線程! – Tim 2009-06-04 14:15:38