企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持知识库和私有化部署方案 广告
![](https://img.kancloud.cn/0a/f7/0af76764be5b8f291e35665202d48010_1316x1156.png) Node.js中宏任务分成了几种类型,并且放在了不同的task queue里,不同的task queue在执行顺序上也有区别,微任务放在了每个task queue的末尾: * `setTimeout/setInterval` 属于 timers 类型; * `setImmediate` 属于 check 类型; * socket 的 close 事件属于 close callbacks 类型; * 其他 MacroTask 都属于 poll 类型。 * `process.nextTick` 本质上属于 MicroTask,但是它先于所有其他 MicroTask 执行; * 所有 MicroTask 的执行时机在不同类型的 MacroTask 切换后。 * idle/prepare 仅供内部调用,我们可以忽略。 * pending callbacks 不太常见,我们也可以忽略。