我有一个应用程序,我从串口读取,一切顺利,直到我关闭应用程序.当我点击[X]时,应用程序只是挂起,UI:无响应.
我从DataReceived事件处理程序中的端口读取,并在FormClosed发生时关闭端口:
private void MainForm_FormClosed(object sender, FormClosedEventArgs e)
{
mySerialPort.Close();
}
Run Code Online (Sandbox Code Playgroud) 我有一个自动检测线程,尝试按顺序打开端口并匹配接收到的数据,从而检测相关设备发送数据的端口.现在,有一些端口,SerialPort.Open只挂起线程约30秒.如何在SerialPort.Open函数上设置超时?
是否有区别:
public T RequestedValue { get; set; }
Run Code Online (Sandbox Code Playgroud)
和
public T RequestedValue;
Run Code Online (Sandbox Code Playgroud)
?
取自此代码:
public class PropertyChangeRequestEventArgs<T>:EventArgs
{
public PropertyChangeRequestEventArgs(T pRequestedValue)
{
RequestedValue = pRequestedValue;
}
public T RequestedValue { get; set; }
}
Run Code Online (Sandbox Code Playgroud)