【发布时间】:2013-08-02 15:33:22
【问题描述】:
我有一个用setInterval() 调用的函数,如下所示:
canvasInterval = setInterval(updateCGoL, (1000/this.frameRate)|0);
我允许用户指定每秒帧数(有限制,在 parseInt() 之后只有非 NaN 值作为 Math.max(Math.min( 用户输入 , 30), 1))。即使它以每秒 30 帧的速度运行,我也很确定它会在下一帧之前完成它的工作。我的问题是:
- 如果没有在规定时间内完成工作会发生什么 我给的?
- 有没有办法测试它是否在下一次之前没有完成它的工作 如果这是一个问题,框架?
编辑:(从 cmets 复制/粘贴)如果我的函数的限制是每秒 20 帧(用于计算)但我设置了以每秒 30 帧运行的 setInterval,它将改为以 20 帧运行? (相对于同时运行的两个函数)
【问题讨论】:
-
如果您正在制作动画..我建议您改用 requestAnimationFrame..请怜悯那个可怜的浏览器!!!
-
我从没听说过,有什么比
setInterval()更好的地方? -
听人们说,弥赛亚说怜悯。
-
我最近刚刚在英国皇家空军上给出了答案..给你链接!!!