搜索
编程论坛
→
开发语言
→
C++论坛
→
『 VC++/MFC 』
→ 关于多线程的一个问题
标题:
关于多线程的一个问题
只看楼主
邵帅
等 级:
贵宾
威 望:
20
帖 子:174
专家分:505
注 册:2012-8-27
结帖率:
78.26%
楼主
已结贴
√
问题点数:20 回复次数:8
关于多线程的一个问题
对于同时运行的多个线程,当一个线程得到cpu时间后,除非sleep(不考虑销毁),否则其他线程是不会有机会执行的。
我在一个线程让他:sleep(5000);结果发现程序每隔5秒卡一下。。郁闷。
而如果sleep(50),就不会卡,求解释。
搜索更多相关主题的帖子:
sleep
2013-03-04 08:51
wp231957
来 自:神界
等 级:
版主
威 望:
422
帖 子:13681
专家分:53296
注 册:2012-10-18
第
2
楼
得分:0
5000不就是相当于5秒吗
50 相当于0.05秒 估计肉眼就感觉不到了
DO IT YOURSELF !
2013-03-04 09:01
邵帅
等 级:
贵宾
威 望:
20
帖 子:174
专家分:505
注 册:2012-8-27
第
3
楼
得分:0
回复 2楼 wp231957
?
首先为什么5秒的时候会卡呢?只是让这个线程交出cpu控制权5秒,不该会卡啊?
Figure out what you like. Try to become the best in the world of it.
2013-03-04 09:06
wp231957
来 自:神界
等 级:
版主
威 望:
422
帖 子:13681
专家分:53296
注 册:2012-10-18
第
4
楼
得分:0
5秒还不卡吗 5秒是一个很长的时间概念啊
DO IT YOURSELF !
2013-03-04 09:06
邵帅
等 级:
贵宾
威 望:
20
帖 子:174
专家分:505
注 册:2012-8-27
第
5
楼
得分:0
那应该是这个线程卡,而不是界面线程卡啊。
Figure out what you like. Try to become the best in the world of it.
2013-03-04 09:11
yuccn
来 自:何方
等 级:
版主
威 望:
167
帖 子:6809
专家分:42393
注 册:2010-12-16
第
6
楼
得分:0
sleep 后,就会有线程切换了,卡的原因是因为你sleep的线程是UI线程.
你在非UI线程sleep就不感觉卡了.
多线程程序中,一般都是把工作的事情放多非UI线程的.这样在事件等待的时候,就不会使用户感觉卡,体验上给用户人性.
UI线程sleep 不到一秒都不会有很明显的感觉卡的.
我行我乐
我的博客:
http://blog.yuccn. net
2013-03-04 10:15
邵帅
等 级:
贵宾
威 望:
20
帖 子:174
专家分:505
注 册:2012-8-27
第
7
楼
得分:0
回复 6楼 yuccn
UI线程就是指包含界面更新代码的线程吗?
我建了一个线程用来接收socket发来的数据,并根据数据来更新界面。
Figure out what you like. Try to become the best in the world of it.
2013-03-04 11:15
yuccn
来 自:何方
等 级:
版主
威 望:
167
帖 子:6809
专家分:42393
注 册:2010-12-16
第
8
楼
得分:20
是的 UI线程 就是指界面线程,user interface
“我建了一个线程用来接收socket发来的数据,并根据数据来更新界面。”
子线程接受和发送数据就行了,没有必要子线程来更新界面。。更新界面有UI线程做就行了
子线程接受到数据,通过消息发送给给主窗口,由ui线程来刷新窗口就行了。子线程更新窗口这个是很挫的设计,一般都不会这样设计的。不然,子线程在操作窗口,UI线程也在操作窗口,会乱的
我行我乐
我的博客:
http://blog.yuccn. net
2013-03-04 12:17
邵帅
等 级:
贵宾
威 望:
20
帖 子:174
专家分:505
注 册:2012-8-27
第
9
楼
得分:0
回复 8楼 yuccn
说的是,多谢。
Figure out what you like. Try to become the best in the world of it.
2013-03-04 12:40
9
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-399631-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.013723 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved