沸点 - 推荐 ( ) • 2024-04-06 11:35
如果我们在主模块中运行下面的脚本,这两个定时器的执行顺序是不确定的,因为这受到进程性能的影响:
```
setTimeout(() => {
console.log('timeout');
}, 0);

setImmediate(() => {
console.log('immediate');
});
```
在node中setTimeout在timers阶段执行,然后setImmediate在check阶段执行,主模块执行完成之后开始事件循环,timers阶段不是先于check阶段执行吗?为什么会不确定?希望掘友能帮忙解惑。