node.js事件轮询机制原理知识点
更新时间:2019年12月22日 09:30:38 作者:喝醉的熊
在本篇文章里小编给大家分享的是一篇关于node.js事件轮询机制的相关知识点文章,有兴趣的朋友们可以参考下。
借助libuv库实现的
概括事件轮询机制:分为六个阶段
1.timers 定时器阶段
计时和执行到点的定时器回调函数
2.pending callbacks
某些系统操作(例如TCP错误类型)
3.idle,prepare
4.poll轮询阶段(轮询队列)
如果轮询队列不为空,依次同步取出轮询队列中第一个回调函数,直到轮询队列为空或者达到系统最大限制
如果轮询队列为空
如果之前设置过setImmediate函数,直接进入下一个check阶段,如果之前没有设置过setImmediate函数,在当前 poll阶段等待,直到轮询队添加回调函数,就会去第一个情况执行,如果定时器到点了,他也会去下一个阶段
5.check查阶段
执行setImmediate设置的回调函数
6.close callbacks关闭阶段
close事件回调函数
process.nextTick()的意思就是定义出一个动作,pengd并且让这个动作在下一个事件轮询的时间点上执行。能在任意阶段优先执行
以上就是本次介绍的全部知识点内容,感谢大家的学习和对脚本之家的支持。
相关文章
Express框架定制路由实例分析
这篇文章主要介绍了Express定制路由,结合实例形式分析了express框架定制路由原理、用法及相关注意事项,需要的朋友可以参考下
2023-05-05
node后端与Vue前端跨域处理方法详解
从目前我了解的情况来看,前后端跨域使用的方式有很多种,这里记录我使用最顺手的一种,即在后端使用cors跨域,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2022-08-08
利用Node.js如何实现文件循环覆写
这篇文章主要给大家介绍了关于利用Node.js如何实现文件循环覆写的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Node.js具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
2019-04-04
node.js中的fs.link方法使用说明
这篇文章主要介绍了node.js中的fs.link方法使用说明,本文介绍了fs.link的方法说明、语法、接收参数、使用实例和实现源码,需要的朋友可以参考下
2014-12-12
koa socket即时通讯的示例代码
这篇文章主要介绍了koa socket即时通讯的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
2018-09-09
深入浅析Node.js单线程模型
Node.js采用 事件驱动 和 异步I/O 的方式,实现了一个单线程、高并发的运行时环境,而单线程就意味着同一时间只能做一件事,那么Node.js如何利用单线程来实现高并发和异步I/O?本文将围绕这个问题来探讨Node.js的单线程模型
2017-07-07
node.js学习之base64编码解码
开发者对Base64编码肯定很熟悉,是否对它有很清晰的认识就不一定了。实际上Base64已经简单到不能再简单了,这篇文章给大家通过示例代码介绍了node.js对字符串和图片base64编码解码的方法,有需要的朋友们可以通过本文来进行学习,下面来一起看看吧。
2016-10-10
最新评论