Node.js事件轮询机制(Event Loop)有哪几个步骤
单线程基于libuv实现,分为6个阶段循环执行:
- Timers:执行setTimeout/setInterval回调。
- Pending callbacks:执行系统操作的延迟回调。
- Idle/Prepare:内部使用。
- Poll:I/O事件(核心,等待新I/O或定时器到期)。
- Check:执行setImmediate回调。
- Close callbacks:执行关闭回调(如socket close)。
核心:异步I/O、非阻塞,通过事件队列驱动。nextTick/microtask优先于宏任务。