我知道.NET中的SerialPort通信旨在在数据可用并达到阈值时将DataReceived事件发送到接收器。

我们是否可以不使用该DataReceived事件并在接收方启动线程来频繁地调用那些ReadXXX方法之一来获取数据?

如果接收方比发送方慢得多会发生什么? SerialPort缓冲区会溢出(数据丢失)吗?

最佳答案

这样做没有什么意义,只要在打开端口后自己启动读取器线程即可,而不必理会DataReceived。以这种方式进行操作非常困难,很难在启动线程后完全取消订阅DataReceived事件,尤其是在接收数据的那一刻。您不能同时拥有它们。

08-18 14:08