我对网络工作者非常陌生,但有一个问题是,考虑到以下情况:
onmessage
处理程序。postMessage()
触发工人的onmessage
postMessage
任务仍在进行中时,我立即调用另一个onmessage
那么,我想知道工人是如何处理这个问题的?
发布于 2016-01-06 15:14:08
消息保存在队列中。工作人员有一个消息队列,就像主线程一样--从事件中启动任务(例如。单击)、setTimeout
和postMessage
。下面是它的工作原理:
例如,主线程和Node.js也是如此。这就是javascript的工作原理。
因此,对于您的回答-您发送给员工的所有消息都将按照处理它们的顺序逐一处理。
这是一个jsFiddle是检验我的说法是否正确的一个测试。您将看到,尽管所有消息都是一次发送的,但它们是按顺序处理的。
https://stackoverflow.com/questions/34519751
复制相似问题