内容简介:为了协调异步任务,使任务按时间顺序执行,NodeJS提供了四种定时器;其中而
为了协调异步任务,使任务按时间顺序执行,NodeJS提供了四种定时器;
- setTimeout()
- setInterval()
- setImmediate()
- process.nextTick()
其中 setTimeout
、 setInterval
存在于JS语言标准,
而 setImmediate
、 process.nextTick
则为NodeJS独有;
任务的执行顺序
-
同步任务先于异步任务执行 -
本轮循环先于次轮循环执行
本轮事件循环
本轮循环中存在两个队列:
- nextTick队列(nextTickQueue)
- 微任务队列(microTaskQueue)
在本轮循环中 process.nextTick
是优先执行的,所有的 nextTick
定时器执行完成后,
才轮到微任务队列定时器执行,常见的 Promise
就属于微任务定时器;
次轮事件循环
事件循环的六个阶段:
timers阶段 i/o callback阶段 idle、prepare阶段 poll阶段 check阶段 close callback阶段
- 参考: 定时器详解
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
C++标准库(第2版)
Nicolai M. Josuttis / 侯捷 / 电子工业出版社 / 2015-6 / 186.00元
《C++标准库(第2版)》是全球C++经典权威参考书籍时隔12年,基于C++11标准的全新重大升级。标准库提供了一组公共类和接口,极大地拓展了C++语言核心功能。《C++标准库(第2版)》详细讲解了每一标准库组件,包括其设计目的和方法、复杂概念的剖析、实用而高效的编程细节、存在的陷阱、重要的类和函数,又辅以大量用C++11标准实现的实用代码范例。除覆盖全新组件、特性外,《C++标准库(第2版)》一......一起来看看 《C++标准库(第2版)》 这本书的介绍吧!