如果你想要动画,这通常涉及调用settimeout或setinterval。然后事件加入事件排队系统中的其他事件,并且由于应用程序GUI处理其他事件(如画布鼠标移动),事件可能会从您调用settimeout时设置的时间延迟。但是,如果在webworker中设置动画循环怎么办?它不会受到GUI事件的影响,并且可以在函数调用中设置的精确时间间隔内准确地调用主线程中的动画函数(使用postmessage)。理论上至少似乎没问题,但它真的有效吗?
答案 0 :(得分:3)
但是,如果在webworker中设置动画循环怎么办?
同样的问题:来自网络工作者的事件告诉你它做某事的时间加入了setTimeout
或setInterval
任务加入的同一任务队列。
您可能会从requestAnimationFrame
而不是setTimeout
/ setInterval
获得更好的结果,因为它的明确目的是增加代码与浏览器显示刷新周期的同步