关于定时器关闭的时机的问题 VC使用SetTimer(1,1000,NULL)函数打开的定时器,当定时时间到时,如果定时器的时间函数没有执行完的话,定时器是重新执行时间函数呢,还是等上次的执行完再执行下一次呢? 另外,当KillTimer(1)时,定时器停止定时,如果这时正在执行时间函数,那此时是立即退出时间函数呢还是等这次执行完毕呢? 请高手指点迷津! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我个人认为:1、如楼上所说的,等上次的执得完再执行下一次。2、定时器和时间函数的关系是“当达到定时器所规定的时间间隔,就触发WM_TIMER消息,执行时间函数”,而时间函数并不完依赖于定时器;事实上,时间函数只有在达到定时器所规定的时间间隔后,才会“开始执行”,这只能算是时间函数“开始执行”的必要条件,并不是时间函数“执行”的必要条件;当KillTimer()时,时间函数已经开始执行函数体,但未执行完,此时定时器被关闭一般都是在触发了某种消息时执行的,为什么不可以先转向相应的消息处理子程序去执行KillTimer(可能是中断吧)后再回来继续执行时间函数(因为在此之前时间函数早已“开始执行”了) carbon107: 也就是说一旦进入时间函数,就必须执行完。是吧? 可以在OnTimer()中调用KillTimer(...)杀掉定时器这个 IPHlpApi的使用问题 MCI控制波形声音的播放问题!!! 如何彻底卸载AVG? 有一张图,其效果是白灰黑组成的纺织布质感图,有没有办法让该图变成红色布质感图,绿色布质感图,黄色布质感图。。。。。 OpenGL(VC)中如何用鼠标画线?急!急! ListCtrl中如何才能不显示文件夹 CWnd类直接创建,并且作为程序得主窗口,可以吗? 我怎样可以在系统文件夹里判断*.ini文件是否存在 紧急求助!!!(100分,在线等) ACD See双击一个thumb image的时候会将其显示成一幅大图的效果,这个显示大图的view是怎样创建的? 做控件时遇到的问题 如何删除一个正在运行的EXE?
1、如楼上所说的,等上次的执得完再执行下一次。
2、定时器和时间函数的关系是“当达到定时器所规定的时间间隔,就触发WM_TIMER消息,执行时间函数”,而时间函数并不完依赖于定时器;事实上,时间函数只有在达到定时器所规定的时间间隔后,才会“开始执行”,这只能算是时间函数“开始执行”的必要条件,并不是时间函数“执行”的必要条件;当KillTimer()时,时间函数已经开始执行函数体,但未执行完,此时定时器被关闭一般都是在触发了某种消息时执行的,为什么不可以先转向相应的消息处理子程序去执行KillTimer(可能是中断吧)后再回来继续执行时间函数(因为在此之前时间函数早已“开始执行”了)
也就是说一旦进入时间函数,就必须执行完。是吧?