node的异步I/O
来源:互联网 发布:电脑广告制作软件 编辑:程序博客网 时间:2024/05/16 12:56
node是单线程非阻塞异步I/O的模式。
- 阻塞I/O:完成整个数据获取的过程;
- 非阻塞I/O:不带数据,直接立即返回,要获取数据,还需通过文件描述符再次读取。
node完成整个异步I/O的有事件循环、观察者、请求对象、执行回调;
- 事件循环:这是node自身的执行模式。在进程启动时,node会创建一个循环,每执行一次循环就会查看是否有事件处理,有,就取出事件及相关的回调函数。如果存在关联的回调函数,就执行他们,然后进入下一个循环,如果不在有事件处理就退出循环。
- 观察者:浏览器在解析页面时,有些事件可能是来自用户的点击或者加载某些文件是产生,而这些产生的事件都是相应的观察者,当我们在执行一个node进程的时候,每一个事件循环都有一个或多个观察者,而判断是否有事件要处理的过程就是向这些观察者询问是否有要处理的事件。
- 请求对象:我们在进行异步调用的时候就会封装一个请求对象,用于放入I/O线程池等待执行,已完成整个异步I/O的I/O操作。
- 执行回调:组装好请求对象,然后总入I/O线程池等待执行,实际上是完成了异步I/O的第一部分,回调执行时第二部分。在每次事件循环执行中,他调用的请求对象都会加入到I/O观察者的队列,然后将其当做事件处理。
- 整个异步I/O的流程图:
- 总结
异步调用——(请求对象)——>I/O线程池——(观察者)——>事件循环。
阅读全文
0 0
- Node的异步 I/O
- node的异步I/O
- Node.js的异步I/O
- Node.js的异步I/O
- node.js 异步I/O
- Node中的异步I/O
- Node.js 异步I/O
- 理解Node.js的异步非阻塞I/O模型
- Node.js的单线程异步I/O优势
- 浅解Node.js的异步非阻塞I/O模型
- Node在异步I/O上的优势实践
- Node——异步I/O
- 深入浅出Node.js(五):初探Node.js的异步I/O实现
- 深入浅出Node.js(五):初探Node.js的异步I/O实现
- 深入浅出Node.js(五):初探Node.js的异步I/O实现
- 深入浅出Node.js(五):初探Node.js的异步I/O实现
- 深入浅出Node.js(五):初探Node.js的异步I/O实现
- 深入浅出Node.js(五):初探Node.js的异步I/O实现
- 8.22——Form、div、CSS
- Java static的用法以及原理
- mac版eclipse记不住默认工作空间
- MySQL日期时间函数大全
- C++sort函数的用法
- node的异步I/O
- 12_最长平台
- Java进阶之路【代码篇】——《CleanCode》编程规则精编(4)格式
- Hive DDL DML及SQL操作
- 【常见数据类型占多少字节问题】
- SQL语言之delete、truncate和drop命令的区别和总结
- bzoj 4094: [Usaco2013 Dec]Optimal Milking 线段树
- 卓美业带来美业管理全新体验,内测中
- matlab中函数与opencv中对应