【Node.js】事件循环
warning:
这篇文章距离上次修改已过266天,其中的内容可能已经有所变动。
Node.js 的事件循环是单线程的,但通过使用回调、事件监听器和异步I/O操作,它能够在单个线程中并发地处理大量的并发操作。
Node.js 的事件循环可以概括为以下几个阶段:
- 执行全局代码
- 执行微任务(例如:Promise 的回调)
- 执行事件监听器
- 执行 setImmediate 的回调
- 执行 close 回调(例如:socket.on('close', ...))
以下是一个简单的例子,展示了如何在 Node.js 中使用事件循环处理异步操作:
在这个例子中,fs.readFile
是一个异步函数,它会在后台读取文件,并在读取完成后触发一个事件,然后执行传递给它的回调函数。这样的设计使得 Node.js 能够处理大量的并发操作,而不会阻塞单个线程。
评论已关闭