nodejs事件循环几个阶段是什么
时间:2022-02-11 17:18
nodejs事件循环的阶段:1、timers(定时器)阶段;2、pending callbacks阶段;3、idle、prepare阶段;4、poll(轮询)阶段;5、check(检查)阶段;6、close callbacks阶段。 本教程操作环境:windows7系统、nodejs 12.19.0版,DELL G3电脑。 当Node.js启动时会初始化event loop,每一个event loop都会包含六个循环阶段,nodejs时间循环和浏览器的事件完全不一样。 阶段概括 在事件循环的每次运行之间,Node.js会检查它是否在等待异步I/O或定时器,如果没有的话就会自动关闭。 如果event loop进入了poll阶段,且代码没设定timer,将会发生下面情况: 如果event loop进入了poll阶段,且代码设定了timer: 【推荐学习:《nodejs 教程》】 以上就是nodejs事件循环几个阶段是什么的详细内容,更多请关注gxlsystem.com其它相关文章!nodejs事件循环
注意:图中的每个方框被称作实践循环的一个阶段(phase),这6个阶段为一轮事件循环。
setImmediate约等于setTimeout(callback,0)
- 如果代码已经被setImmediate()设定了callback,event loop将结果poll阶段进入check阶段,并执行check阶段的queue(check阶段的queue是setImmediate设定的)。
- 如果代码没有设定setImmediate(callback),event loop将阻塞在该阶段等待callback加入poll queue,一旦到达就立即执行。