NodeJS定时器与事件循环

栏目: Node.js · 发布时间: 7年前

内容简介:为了协调异步任务,使任务按时间顺序执行,NodeJS提供了四种定时器;其中而

为了协调异步任务,使任务按时间顺序执行,NodeJS提供了四种定时器;

  • setTimeout()
  • setInterval()
  • setImmediate()
  • process.nextTick()

其中 setTimeoutsetInterval 存在于JS语言标准,

setImmediateprocess.nextTick 则为NodeJS独有;

任务的执行顺序

  • 同步 任务先于 异步 任务执行
  • 本轮 循环先于 次轮 循环执行

本轮事件循环

本轮循环中存在两个队列:

  1. nextTick队列(nextTickQueue)
  2. 微任务队列(microTaskQueue)

在本轮循环中 process.nextTick 是优先执行的,所有的 nextTick 定时器执行完成后,

才轮到微任务队列定时器执行,常见的 Promise 就属于微任务定时器;

次轮事件循环

事件循环的六个阶段:

timers阶段
i/o callback阶段
idle、prepare阶段
poll阶段
check阶段
close callback阶段

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

《电脑报》2005年合订本(上下)

《电脑报》2005年合订本(上下)

电脑报社主编 / 西南师范大学出版社 / 2006-1 / 45.00元

全套上、下两册,浓缩2005年电脑报精华文章;附录包含70余篇简明IT应用指南,涵盖软件、硬件、数码、网络四大领域,配赠权威实用的2005-2006中国计算机年鉴光盘,近1.4GB海量信息与资源超值奉献,提供2005-2006全系列硬件、数码产品资讯,兼具知识性与资料性,连结购买每年《电脑报合订本》,你将拥有一套完整的实用大型电脑文库。一起来看看 《《电脑报》2005年合订本(上下)》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试