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并且让这个动作在下一个事件轮询的时间点上执行。能在任意阶段优先执行
以上就是本次介绍的全部知识点内容,感谢大家的学习和对脚本之家的支持。
相关文章
node.js+captchapng+jsonwebtoken实现登录验证示例
本篇文章主要介绍了node.js+captchapng+jsonwebtoken实现登录验证示例,具有一定的参考价值,有兴趣的可以了解一下2017-08-08
Node.js使用Streams来处理文件读写操作的示例代码
在Node.js中,Streams 提供了一种高效的方式来处理文件的读写操作,特别是对于大文件或数据流,Streams 允许你以流的方式读写数据,这意味着数据可以分块处理,本文介绍了在Node.js中如何使用Streams来处理文件读写操作,需要的朋友可以参考下2024-09-09
Node.js如何响应Ajax的POST请求并且保存为JSON文件详解
这篇文章主要介绍了关于Node.js是如何响应Ajax的POST请求并且保存为JSON文件的相关资料,文中介绍的很详细,对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。2017-03-03


最新评论