关于MFC中线程和Timer的问题

zhuhaoonly 2012-11-12 02:09:45
问题描述:我写了一个串口通讯的程序
第一种情况:使用OnTimer作为后台的循环监听,然后点击按钮向串口发送消息,当串口收到按钮消息以后,由于后台有一个Timer在监听状态,所以会把取到的消息刷新的界面并显示出来,这种情况没有问题,但是如果再播放视频的话视频就会出现卡顿的情况,目前判断就是由于后台监听导致的,如果Timer设置会每2秒循环一次,那么视频播放会每个2秒卡顿一下,这样就严重影响到了用户的体验度。所以就考虑使用线程,
也就是下面说的第二种情况:使用线程作为后台监听的循环,这个时候播放视频不会有卡顿的现象,播放速度跟正常情况下没有区别,但是如果点击按钮发送消息比较频繁的情况下,会出现界面卡住,整个程序没有响应的情况,我想请问各位,为什么会这样呢?同样都是后台监听,间隔的时间也设定成一样的,一种情况使用OnTimer,另外一种情况使用线程,但是使用线程的情况,我同样点击按钮像串口发送消息却会出现程序卡死的情况,我想请问这个问题该怎么解决?有什么好的办法吗?

...全文
143 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧