SetTimer函数是在后台运行还是进入睡眠状态?

时间:2015-12-17 14:33:15

标签: c++ multithreading winapi timer

在我的一个项目中,我需要有效地安排不同的操作一次又一次地执行,每个操作都有自己的时间间隔。

我一直想知道,当我使用SetTimer函数时,后台会发生什么?

是否创建了一个新线程? 它是在后台运行并吃掉我的CPU吗?或者它会睡觉,直到操作系统在时机到来时唤醒它? 是否可以拥有大量的计时器,或者是否有充分的理由尝试将其数量降至最低?

感谢。

1 个答案:

答案 0 :(得分:2)

  

是否创建了一个新线程?

没有

  

它是在后台运行并吃掉我的CPU吗?

不 - 试一试。设置计时器并检查任务管理器。

  

它是否会睡觉,直到操作系统在时机到来时唤醒它?

  

拥有大量计时器还是有充分理由可以   尽量减少他们的金额?

对于今天的系统来说,很多计时器并不是一个巨大的开销,但你应该仔细考虑这个要求。