
如果事件队列中有回调函数,执行它们直到清空队列。
否则事件循环将在此阶段停留一段时间以等待新的回调函数进入,这个等待取决于以下两个条件: 1. setImmediate 队列(check 阶段)中存在要执行的回调函数. 2. timers 队列中存在要执行的回调函数. 在这种情况下, 事件循环将移至 check 阶段, 然后移至Closing callbacks 阶段, 并最终从 timers 阶段进入下一次循环。 5. Check:存储 setImmediate API 的回调函数。 6. Closing callbacks:执行与关闭事件相关的回调,例如关闭数据库连接的回调函数等。循环体会不断运行以检测是否存在没有调用的回调函数,事件循环机制会按照先进先出的方式执行他们直到队列为空。