gpt4 book ai didi

c# - 通过不同的线程同时读取和写入串行端口是否安全?

转载 作者:太空狗 更新时间:2023-10-29 17:41:10 25 4
gpt4 key购买 nike

通过不同的线程(一个读线程和一个写线程)同时读写串口是否安全?是否有必要在每个线程中围绕读/写添加锁定?

最佳答案

从不同线程“同时”读取和写入串行端口是处理串行端口通信的标准方式:一个线程处理读取,一个线程处理写入。可接受。

有许多基于串行的设备可以将数据异步发送到主机,同时仍允许将命令发送到设备本身:条形码扫描仪、标签扫描仪和相机等设备。

有问题吗?

当您尝试同步与设备之间的通信时就会出现问题。

例如,您想编写一个命令,然后立即读回任何响应。那么,在那种情况下,您将暂停读取线程,并在写入命令后手动读取所有串口数据。命令处理完成后,读取线程可以再次启动。

总结

总的来说,我建议只有一个额外的线程来处理所有端口数据的读取并触发事件,例如 DataReceived 并从主线程执行所有写入。

关于c# - 通过不同的线程同时读取和写入串行端口是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1488712/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com