是否需要创建一个单独的线程来读取串口?

Is it necessary to create a separate thread for reading a serial port?

我有多个进程需要同时运行:读取和报告来自串行设备(插入 OSDK 设备)的数据,将遥测数据传输到 MSDK 设备,以及接收和解析来自 MSDK 设备的传入数据.我认为数据传输应该在主线程中进行,那么将串行读取分离到另一个线程中是否合适?

这是我第一次使用线程。

谢谢。

你不必使用单独的线程,你也可以使用非阻塞函数来尝试从串口读取。然而,一个单独的线程使一些事情变得更简单,但所需的锁定再次使它变得更复杂。哪个更容易取决于您的任务的细节。