我正在处理一个困难的错误,其中一个setInterval回调只被调用了20次或21次,然后再也没有,即使我从未清除过这个间隔。 (至少在Chrome中运行)浏览器在什么情况下拒绝继续调用setInterval回调?
页面保持响应状态,所以回调不会陷入无限循环。
如果浏览器执行时间太长,是否决定停止调用setInterval回调?例如,如果在setInterval回调中执行一些昂贵的画布绘制?
不幸的是,在这个问题(即React,Redux,自定义Redux中间件,Canvas绘图)中存在太多可能涉及的层来发布一个好的代码示例。我在询问现代浏览器中的setInterval的预期行为。
编辑我想我可能会看到在浏览器的错误与帆布setInterval
/setTimeout
内画做。我无法在Firefox中重现。
您如何验证间隔未被召回?你能提供一个链接,我们可以在这里看到并检查这种假定的失败? – Teemu
不幸的是,这是在一个私人预发布产品。 – Andy
即使我的CSS转换似乎停止工作,一旦间隔死亡。我想我可能正在处理Chrome中的一个错误。 – Andy