gpt4 book ai didi

在未聚焦的选项卡中运行时的 Javascript 性能

转载 作者:可可西里 更新时间:2023-11-01 02:19:39 27 4
gpt4 key购买 nike

某些最新版本的 Chrome 和 Firefox* 似乎发生了变化,现在当运行 Javascript 的选项卡不是当前聚焦的选项卡时,Javascript 的执行似乎有所不同。

当我运行JavaScript单元测试时,通常需要大约20秒才能完成,但是现在,当Tab未关注时,它需要超过2000秒。但奇怪的是,每个单独测试的运行时间都没有受到影响(大多数仍然小于 10 毫秒)。我正在使用的测试运行器在运行每个测试之间添加了一个 setTimeout(0),这样浏览器就不会在执行时锁定,所以这似乎是罪魁祸首。

有没有办法告诉 Javascript 引擎不要“降低”该选项卡的优先级?很高兴能够在后台运行我的测试,而不必看着自己......

*抱歉,我不太关心尝试安装旧版本以查找何时开始发生这种情况。至少,它现在正在 Firefox 5.0 和 Chrome 12 上发生。

最佳答案

setTimeoutsetInterval 在未获得焦点的选项卡中已被限制为至少 1000 毫秒。 Here是提到它的 Bugzilla 报告。这是类似的 Chromium bug report .我相信 Firefox 5 和自版本 11 以来的 Chrome 就是这种情况。

根据 MDN :

In (Firefox 5.0 / Thunderbird 5.0) and Chrome 11, timeouts are clamped to firing no more often than once per second (1000ms) in inactive tabs; see bug 633421 for more information about this in Mozilla or crbug.com/66078 for details about this in Chrome.

至于绕过此限制,您可以尝试 this article 中讨论的技术, 但我还没有更改自己尝试。

关于在未聚焦的选项卡中运行时的 Javascript 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6585112/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com