问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

串口传输用不用使用多线程 为什么

发布网友 发布时间:2022-05-16 12:14

我来回答

4个回答

热心网友 时间:2023-10-22 09:29

主要是两个原因:
1、串口的通讯速率相对电脑来说是很慢的(最高110K,以太网都千兆了)。正常情况下,在等待下一个串口信号的间隙,操作系统已经完成了时间片轮转。多以不需要多线程。
2、标准串口是独占资源,所以除非是多个串口同时操作,在单串口上实现多线程运作效率会更低。因为必须在切换线程时考虑到释放独占资源,程序的复杂度也会呈几何级数上升,完全得不偿失。

热心网友 时间:2023-10-22 09:29

异步串口可以不用,同步阻塞方式必须用,否则调用readfile writefile会阻塞线程,窗口就卡死了。。。
单线程用异步串口可以,但并不好,异步方式,窗口界面一般你还需要用个定时器,定时来查询通讯是否完成,何必这么麻烦,实时性又差。。。。
如果想实时性好一些,最好是阻塞方式,因为这样只要通讯完成,马上就退出阻塞,你就可以继续了,单独的线程又不干别的,阻塞也就阻了,主线程是有其他事情要做,窗口的所有操作都是主线程的事,如果阻塞了,窗口就死了。。。。
如果你用串口控件的话,也可以不用创建线程(控件替你创建好了),这就简单的多。。。。

热心网友 时间:2023-10-22 09:30

除非你是计算机上同时存在多个串口需要操作(比如使用了多串口卡或者USB转串口集线器),可以考虑开多线程,否则没有必要。

热心网友 时间:2023-10-22 09:30

需要,不然会阻塞其它处理,比如界面渲染。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
光线为什么不存在 炒菜时要等到油冒烟吗 高考数学选修没涂有分吗? 高考选修不涂有分数吗 《宫》中插曲是什么乐器演奏的? 电视剧《宫》的主题曲和片尾曲分别是什么? 爱我的人和我爱的人原唱是裘海正还是游鸿明 刑法对追诉时效的规定 刑事案件追诉期限的法律规定是什么? 爱奇艺海外版怎么下载 vivoxplay6最低多少钱 C# 串口通讯是否适合使用多线程编程 传真机一定要接一台电话吗??? 如何实现多线程串口通信 衡水公积金贷款额度 豉油皇焗杂菌五花肉怎么做好吃,豉油皇焗杂 生焗五花肉怎么做? 梅菜焗五花肉的做法 南乳焗五花肉怎么做如何做好吃 怀孕五个月肚子两侧有点疼怎么回事 请问在windows XP系统下,怎样判断自己的硬盘或者文件是不是被共享了? 我安装了windows xp和linux双系统,如何在xp系统查看硬盘总大小? xp系统挂两个硬盘,怎么区分哪个磁盘是哪个硬盘上的? xp系统如何能够直观的显示硬盘容量 过五有二什么意思!具体点,是关于买房还是卖房者?利率,税率? 关羽“过五关”是指哪五关? 售楼小姐说的产权过2过5是啥意思 “枫叶”与“梧桐叶”有什么区别? 梧桐叶是什么意思 梧桐叶是什么颜色 梧桐叶是什么颜色的 vivoXplay6现在卖多少钱 有关多线程串口的资料 C# 中 多线程、串口通信的问题。 急``~~~ 法律的毕业论文 哪方面的 比较好写 传真机能打电话吗? vivoxplay6现在多少钱? c#多线程串口通信问题 vIvo旗舰xplay6多少钱 MFC 多线程串口通信 MFC多线程串口通信 vivo xplay6黑色多少钱 vc++用多线程进行串口通信问题 vivoxplay6磨砂黑多少钱 JavaWeb 多线程 串口通信 多线程操作串口 vivo xplay6 64g版多少钱 你好,请教你个串口多线程编程问题。 我写了一个串口通讯程序,想扩充成多线程的,本来还只有一个线程的时候还GCC之后执行结果是对的, 一个串口能被两个程序同时访问吗? 微信买假货真的没地方投诉吗