nodejs的事件轮询机制

时间:2021-03-29 13:03:57
1.timers定时器阶段
执行定时器到点的回调函数(所有定时器setTimeout / setInterval的回调函数都在这个阶段执行)
2.idle prepare 准备阶段
TCP错误回调
3.系统阶段
系统内部使用
4.poll 轮询阶段
会执行大部分的回调函数,里面有一个回调队列,这个队列就保存着所有要执行的回调函数
查看回调队列是否有回调函数 有则依次取出,同步执行! 无则如果之前设置过setImmediate函数,就回去第五阶段,如果之前没有设置过,就一直在第四阶段(当前阶段)停留。如果定时器到点了,为了去第一阶段执行定时器的回调函数,它也得去第五阶段
5.check检查阶段
只负责执行 setImmediate的回调函数
6.关闭阶段
执行关闭事件的回调函数 close end