记忆之渊

文章 评论 浏览 32

记忆之渊 2022-05-04 05:43:43

@zColdWater 你理解得应该没什么问题,就是表述有点不是很好懂(比如没有event loop为空的说法)。

下面总结几点关于event loop的:

  1. 在浏览器和Node.js中,JS都是以单线程在运行,当前执行栈必然是执行完(为空) 才会进入下个event loop。
  2. process.nextTickPromise都是microtask,即在进入下个event loop前执行(也可以理解成不是event loop相关的概念)。
  3. setTimeout/setImmediate/io是task,会把回调延迟到后面的某个event loop执行。
  4. node.js中event loop分为不同的阶段,每个阶段有自己的任务。

Node.js 的 event loop 及 timer / setImmediate / nextTick

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文