while(ture) +sleep()与Timer 作为定时查询的比较

while(ture) +sleep()与Timer 作为定时查询的比较

1,我的程序改动导致功能失败,问题出在哪里,难道消息响应机制不同,这一点请讲解详细一点;

这个一句话说明就是:定时器并不是多线程的.

2,while循环加sleep延时的作用效果和定时器是否一样,它们有什么区别;

一般很少将Sleep与while写在一起,Sleep的作用是线程暂停,此时线程得不到处理时间.处于休眠状态.定时器的作用只有一个:就是按指定的时间间隔发送WM_TIMER消息.由窗口处理过程来处理WM_TIMER.它们两个的作用以及目的都是不同的,谈不上区别

3,如果定时器的执行语句中用了加有sleep的while循环语句,那么定时器的循环时间会怎么变化,比如定时器的循环时间是100,可里面有sleep(100),那么执行效果会怎样;

定时器只是定时发消息,但是如果定时器的处理过程用时太长的话,WM_TIMER就会来不及处理,此时,多个WM_TIMER就会被合并成一个.所以定时器并不是很精确的.

4,如果我要是想用线程在基于FormView的视图文档结构程序中来动态显示位图,该怎么样操作,我开始想用消息传递的方式,后来发现操作可行性不大,该怎么做。

建议将视图的HWND句柄传给线程,通过API来操作.不过,消息传递的方式操作起来很方便的,向视图发送自定义消息,将要显示的位图编号当作参数传过去,视图在响应消息时根据消息参数显示图片.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值