我正在研究时间驱动的事件,我似乎无法弄清楚如何在不经常使用过多 CPU 的情况下做到这一点。
array events;
events[1] = [id:1,time:1440589943,event:happend];
While(running)
{
loop over events
if(currentTime >= eventTime)
fireEvent()
}
这似乎是我能想到的最基本的事件处理程序,但我认为它会不断消耗大量 CPU 而没有真正做任何事情。
所以问题基本上是:其他任何语言的时间驱动事件如何处理时间驱动事件?他们是否经常检查一个人是否准备好被解雇?他们是否使用巧妙的调度机制?
提前致谢。