我只是尝试使用 Win32 中的 SetTimer 方法,使用一些较低的值(例如 10 毫秒)作为超时期限。我计算了获得 500 个计时器事件所需的时间,并预计它约为 5 秒。令人惊讶的是,我发现获取这么多事件大约需要 7.5 秒,这意味着它在大约 16 毫秒时超时。我们可以为超时期限设置的值是否有任何限制(我在 MSDN 上找不到任何内容)?另外,我系统中运行的其他进程是否会影响这些计时器消息?
最佳答案
OnTimer 基于 WM_TIMER
消息,这是一个低消息优先级,这意味着它只会在没有其他消息等待时发送。
另外 MSDN 解释说你不能设置一个小于 USER_TIMER_MINIMUM
的间隔,也就是 10。
无论如何,调度程序都会遵守时间量程。
关于c++ - MFC/Win32 中的定时器消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/726698/