C#异步串行通信

时间:2015-11-21 15:56:30

标签: c# multithreading async-await task

我正在从串行设备读取数据。软件应该做我称之为实时监控的事情。该设备是汽车的ECU。

在我的GUI上,我想开始监控。要获取数据,需要将3个字节的数组发送到ECU。之后,ECU回复数据包。应解析此数组并将其返回主线程以进行进一步处理。然后应该向ECU发送新请求,接收数据,解析发送回主线程等等。一遍又一遍,直到我停止线程。

最好的方法是什么?使用asyncawaitBackgroundworkerTaskTaskFactory?哪个最适合.NET串口类?

1 个答案:

答案 0 :(得分:-1)

在异步请求中调用同步调用时,您可以忽略线程和回调,因为具有状态Maschine的Task类将为您创建一个新线程,随时可以在" await&#中执行阻塞调用34;