Nodejs消息队列vs宏任务队列



消息队列宏任务队列有什么区别?是一样的吗?

在Nodejs文档中它说:

当setTimeout()被调用时,浏览器或Node.js启动计时器。一旦计时器过期,在本例中,当我们将0作为超时时,回调函数将被放入消息队列中。

然而,在本节中,它说:

在宏任务队列中添加setTimeout, setimmedium回调

那么,消息队列宏任务队列是一回事吗?

这里指的是同样的东西。我们可以说"消息队列"是一个更通用的术语,如在中,微任务队列和宏任务队列都是消息队列

如果我没看错的话,似乎"消息队列"是一个通用术语,使用几个不同的队列来实现。

在本节中他们解释:

一个过程。将nextTick回调添加到流程中。nextTick队列。一个Promise.then()回调被添加到promises微任务队列中。一个宏任务队列中增加setTimeout、setimmedium回调。

看起来宏任务,微任务等是实现的特定部分,具有不同的属性。

例如,执行顺序:

事件循环执行进程中的任务。先勾选queue,然后先执行promise微任务队列,再执行宏任务队列。

在这里找到另一个简单的解释。

最新更新