Web Worker类收集垃圾时会发生什么

时间:2019-03-16 04:01:52

标签: javascript web-worker

我有一个类,该类在实例化该类时处理新Web工作者的创建,向该工作者发布一条消息,该消息返回一个诺言,当该工作者完成任务时,该诺言将得到解决。基本上,我正在调用一个处理创建,发布,侦听和终止工作人员的类。

但是,如果我创建此类的新实例,发布消息并结束我的功能,那么工作人员会怎样?它会变成孤立的并继续运行其任务直到完成吗?

此外,这有点切线,但是一次实例化n个工人数量有多糟糕? 8? 20吗50吗浏览器如何处理?

1 个答案:

答案 0 :(得分:2)

  

它会变成孤立的并一直运行其任务直到完成吗?

是的。按照规范,在这种情况下,事件循环必须运行到完成,该工作程序被标记为“可暂停”,最后,该

Reference步骤10

  

一次实例化n个工人有多糟糕? 8? 20吗   50?

您可以在这里玩:http://math.hws.edu/eck/jsdemo/jsMandelbrot.html

我个人已经看到16个工作应用程序嗡嗡作响。必须考虑到旋转/拆卸和消息传递之间的权衡。