ture) +sleep()与Timer 作为定时查询的比较"/>
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来操作.不过,消息传递的方式操作起来很方便的,向视图发送自定义消息,将要显示的位图编号当作参数传过去,视图在响应消息时根据消息参数显示图片.
更多推荐
while(ture) +sleep()与Timer 作为定时查询的比较
发布评论