如何知道Web worker实例进程是否已完成

时间:2015-12-30 22:27:36

标签: web-worker

所有

我对JS Web Worker很陌生,比如当我实例化一个像以下网页的工作时那样:

var worker = new Worker("worker.js");

然后我打电话给:

worker.postMessage("Start working");

有一个问题困扰我:

我如何知道工作人员是否已准备好接受我的postMessage调用(我认为新工作人员需要一些时间才能完成,如果我调用postMessage太快以至于工作人员甚至没有准备就会出现问题,尤其是在worker.js中有一些asyn操作)?或者我不需要担心这个问题,因为这个操作是同步的,当我调用postMessage 时,我可以假设工作者已准备就绪(如果worker.js没有问题)?

谢谢

1 个答案:

答案 0 :(得分:0)

通过new Worker(...)创建新工作人员的行为是同步的,因此当您的下一行投放时,它已准备好postMessage(...)

查看HTML5Rocks' The Basics of Web Workers了解细节。