我在Node.js中设置了一个等待3小时发出事件的计时器,一旦达到该时间,就会向所有正在侦听的浏览器发出事件。
浏览器收集此事件发生之前的信息,然后计算每1秒倒计时倒计时的时间,并预计当时钟达到0时,事件将被触发。
所以一个人正在使用setTimeout
(Node.js)而另一个正在使用setInterval
(浏览器)每秒计数(倒计时)。
setTimeout
足够准确,可以在小于1秒的误差范围内调用。我读过关于计时器是500毫秒到甚至1000毫秒的预防,这对我的需求来说很好,但是我从来没有听说过它们在我想要的那段时间里被使用了。
它们是否足够准确或我应该使用不同的解决方案?特别是在Node.js方面,它必须是最准确的。
答案 0 :(得分:1)
计时器的准确性取决于"忙碌"事件循环是在超时时。
如果您想要类似的东西,那应该足够了:
Categories
如果您的事件循环在任何时间段内都处于阻塞状态,则会出现其他问题。
但如果您在倒计时中每秒抽样四次,那么我预计会产生很大的不准确性。
因此,您可能需要将两项活动(抽样和倒计时)分开,或手动维持经过的时间。
请注意,当您的网络应用程序没有焦点时,计时器的准确性会降低。