Process.nextTick 和 setImmediate

本文通过实例详细解析了Node.js的事件循环机制,对比了process.nextTick与setImmediate的调用时机,展示了不同异步操作的执行顺序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


暂时先转载这些 ,后面学习深入了再展开

nextTick 用 uv_idle_start 挂的,它的callback function 最早被call,然后 io 的,最后是 setImmediate 的 callback function 被 call。

作者:黑暗二叉树
链接:https://www.zhihu.com/question/23028843/answer/34597367
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

A();
B();
C();
<img src="https://i-blog.csdnimg.cn/blog_migrate/277a00b6d9f3e442fc71c8ceaaf3f90a.png" data-rawwidth="810" data-rawheight="162" class="origin_image zh-lightbox-thumb" width="810" data-original="https://pic4.zhimg.com/ba47432176970aeb9e9df4c3cbb3a623_r.jpg">
------------------------------------------------------------------------
A();
process.nextTick(B);
C();
<img src="https://i-blog.csdnimg.cn/blog_migrate/c7c086316714624dff13a7a71d7526be.png" data-rawwidth="810" data-rawheight="162" class="origin_image zh-lightbox-thumb" width="810" data-original="https://pic3.zhimg.com/3a591f00cfe6b3c3b51137c2a8bda382_r.jpg">
------------------------------------------------------------------------
A();
setImmediate(B);
C();
<img src="https://i-blog.csdnimg.cn/blog_migrate/31db8811f29e4bad21c30de0117c4e0d.png" data-rawwidth="810" data-rawheight="162" class="origin_image zh-lightbox-thumb" width="810" data-original="https://pic1.zhimg.com/2d5e6e9335f8972b0d5a6e010871d828_r.jpg">

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值