多线程访问资源问题

hehening88 2013-03-05 09:37:24
MFC对话框中一个按钮的响应函数实现两个功能:
显示数据同时处理数据,因此开两个线程,一个线程显示数据(开了一个定时器,响应WM_TIMER消息按照一定时间间隔向TeeChart图表添加数据并显示)同时在队列队尾添加数据,另一个线程从该队列队头去数据来处理,请问这个队列需不需要加锁来互斥访问?
...全文
1022 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
dreamgis 2015-01-23
  • 打赏
  • 举报
回复
这个题目有意思,过几天我会针对这个贴子发表《秒杀多线程第十六篇 多线程十大经典案例之一 双线程读写队列数据》 大神啊
mfc_xinshou 2013-03-18
  • 打赏
  • 举报
回复
楼主能否把你的代码发上来,我参考一下,我正在解决一个类似的问题
MoreWindows 2013-03-13
  • 打赏
  • 举报
回复
专门针对这个贴子写了篇博客《秒杀多线程第十六篇 多线程十大经典案例之一 双线程读写队列数据》 http://blog.csdn.net/morewindows/article/details/8646902
信阳毛尖 2013-03-08
  • 打赏
  • 举报
回复
引用 10 楼 bsnry 的回复:
引用 9 楼 lsq19871207 的回复:涉及到数据处理和更新的多线程,最好加锁 引用 7 楼 MoreWindows 的回复:这个题目有意思,过几天我会针对这个贴子发表《秒杀多线程第十六篇 多线程十大经典案例之一 双线程读写队列数据》 欢迎大家前来参阅。 我的博客: http://blog.csdn.net/MoreWindows 我的微博: htt……
可以,就是读和写互斥的问题,建议用读写锁
bsnry 2013-03-08
  • 打赏
  • 举报
回复
引用 9 楼 lsq19871207 的回复:
涉及到数据处理和更新的多线程,最好加锁
引用 7 楼 MoreWindows 的回复:
这个题目有意思,过几天我会针对这个贴子发表《秒杀多线程第十六篇 多线程十大经典案例之一 双线程读写队列数据》 欢迎大家前来参阅。 我的博客: http://blog.csdn.net/MoreWindows 我的微博: http://weibo.com/MoreWindows
引用 8 楼 ganpengjin1 的回复:
引用 楼主 hehening88 的回复:MFC对话框中一个按钮的响应函数实现两个功能: 显示数据同时处理数据,因此开两个线程,一个线程显示数据(开了一个定时器,响应WM_TIMER消息按照一定时间间隔向TeeChart图表添加数据并显示)同时在队列队尾添加数据,另一个线程从该队列队头去数据来处理,请问这个队列需不需要加锁来互斥访问?加锁。
引用 1 楼 ydfivy 的回复:
看楼主队列选择哪种了。 用stl猜测会有线程安全问题(一个线程push,一个线程遍历) 建议加锁。
引用 楼主 hehening88 的回复:
MFC对话框中一个按钮的响应函数实现两个功能: 显示数据同时处理数据,因此开两个线程,一个线程显示数据(开了一个定时器,响应WM_TIMER消息按照一定时间间隔向TeeChart图表添加数据并显示)同时在队列队尾添加数据,另一个线程从该队列队头去数据来处理,请问这个队列需不需要加锁来互斥访问?
一个线程去读取数据并显示 另一个线程往尾部追加 这个逻辑才对吧?
信阳毛尖 2013-03-08
  • 打赏
  • 举报
回复
涉及到数据处理和更新的多线程,最好加锁
jimette 2013-03-07
  • 打赏
  • 举报
回复
可以试试 看出现什么状况!
O112358 2013-03-07
  • 打赏
  • 举报
回复
必需的,理由同上
看不见的裂痕 2013-03-07
  • 打赏
  • 举报
回复
需要,理由上面讲了。 不过如果你不想用锁,可以再加个容器,栈。更方便。
漫步者、 2013-03-07
  • 打赏
  • 举报
回复
引用 楼主 hehening88 的回复:
MFC对话框中一个按钮的响应函数实现两个功能: 显示数据同时处理数据,因此开两个线程,一个线程显示数据(开了一个定时器,响应WM_TIMER消息按照一定时间间隔向TeeChart图表添加数据并显示)同时在队列队尾添加数据,另一个线程从该队列队头去数据来处理,请问这个队列需不需要加锁来互斥访问?
加锁。
MoreWindows 2013-03-07
  • 打赏
  • 举报
回复
这个题目有意思,过几天我会针对这个贴子发表《秒杀多线程第十六篇 多线程十大经典案例之一 双线程读写队列数据》 欢迎大家前来参阅。 我的博客: http://blog.csdn.net/MoreWindows 我的微博: http://weibo.com/MoreWindows
MoreWindows 2013-03-06
  • 打赏
  • 举报
回复
用读写锁吧,这种同步机制很方便的。 读写锁可以参考我写的《秒杀多线程第十四篇 读者写者问题继 读写锁SRWLock》 http://blog.csdn.net/morewindows/article/details/7650574
ouyh12345 2013-03-06
  • 打赏
  • 举报
回复
需要的,考虑队列满和队列空的情况
一个傻冒 2013-03-06
  • 打赏
  • 举报
回复
看楼主队列选择哪种了。 用stl猜测会有线程安全问题(一个线程push,一个线程遍历) 建议加锁。

15,473

社区成员

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

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