【发布时间】:2017-06-01 14:48:53
【问题描述】:
我是 node.js 的新手,对理解事件循环有点困惑。据我从https://github.com/nodejs/node/blob/master/doc/topics/event-loop-timers-and-nexttick.md 了解到,事件循环阶段仅处理 setTimeout、setInterval、setImmediate、process.nextTick、promise 和一些 I/O 回调。
我的问题是,如果我有以下代码:
for (var i = 0; i
上面的代码会在哪个阶段执行?
【问题讨论】:
-
除非我遗漏了什么,否则我不会期望 for 循环被视为由事件循环处理的“事件”。
-
I/O callbacks: executes almost all callbacks...。在节点中,处理请求的 HTTP 服务器是 I/O。 -
那么,代码将在哪里执行。它是通过调用堆栈执行的吗?
-
事件循环是一个队列。如果我没记错的话,这些阶段是不同的优先级队列。
-
如果不被事件循环处理,你会认为代码本身没有阻塞事件循环吗?
标签: node.js event-loop