【发布时间】:2017-07-05 08:11:49
【问题描述】:
根据 Mozilla 工程师的一篇文章,Web Workers 启动大约需要 40 毫秒(延迟)。
Web Workers 有多快? https://hacks.mozilla.org/2015/07/how-fast-are-web-workers/
Web Worker 需要大约 40 毫秒来实例化。还有,这次是 非常稳定,变化只有几毫秒。
在 JSFiddle 测试中,我注意到启动延迟在 15 毫秒到 70 毫秒之间变化。延迟似乎在约 40 毫秒左右不稳定。 Chrome 似乎更快(6 毫秒到 25 毫秒)。
var workerCode = URL.createObjectURL(blob); // no download latency
var worker = new Worker(workerCode);
https://jsfiddle.net/pvr5xroh/1/
为什么 Web Worker 的启动延迟如此之高?
【问题讨论】:
-
该链接不是文档,它是一篇关于 Firefox OS 在 2015 年如何工作的文章。
-
我引用它作为 Mozilla 工程师的一篇文章,他以专家的身份探索了 Web Workers 的速度。启动延迟似乎适用于 2017 年的浏览器。
-
我从您的问题中理解了其他情况(“延迟似乎在约 40 毫秒左右不稳定”)。无论如何,我的意思只是这可能不是规范强加的故意延迟,无论如何,Firefox OS 不再是我们中间:_(
-
您在参考方面是正确的,但是延迟适用于所有浏览器/平台,我只是搜索了相应的文章。由于这种延迟,目前 Web Worker 的使用受到前端优化的严格限制。
标签: javascript html performance web-worker front-end-optimization