Web worker内部是否可以使用Web worker?

8

我试图在一个 Web Worker 中生成另一个 Web Worker,但是我遇到了如下错误:

mainWorker.js:92 Uncaught ReferenceError: Worker is not defined

请看以下代码:

var worker = new Worker('subWorker.js');
worker.postMessage(......);

这种情况有没有解决方法?请问是否可以实现?

你可以向主线程发送消息以生成另一个工作线程。 - Sebastian Simon
哦,我没有考虑过这个……我会尝试。 - Vanojx1
2
它应该是可以正常工作的,但目前在Chrome和Safari中还无法正常工作。您可以尝试通过主线程的“绕路”来解决问题。 - Sebastian Simon
1
@Vanojx1 现在可以工作了。 - DavidsKanal
1个回答

6

如果有人偶然来到这里,至少在Chrome浏览器中,嵌套Worker现在得到了一些支持:https://www.chromestatus.com/feature/6080438103703552

专用worker可以创建嵌套的worker,但共享worker和服务worker不行。

从共享worker创建嵌套的专用worker目前还不支持。

Nested shared workers也在规范中,但当前没有计划支持它们。


从音频工作线程创建一个 Worker 并不起作用。 - Archie

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接