文档章节

阻塞,非阻塞IO和同步,异步IO

shawn chen
 shawn chen
发布于 2010/12/24 17:13
字数 265
阅读 4.3K
收藏 21

在看ACE的过程中,难免对socket的一些特别的api有点质疑,于是不得不求助于unix网络编程,在看的过程中

终于懂得了阻塞,非阻塞和同步,异步的区别,以前认为非阻塞就是一中异步模式呢,哎,看来内功真的不行,太菜鸟了,

下面开始讲解一下他们的真正含义:

Unix下的五种I/O模型是:

阻塞I/O

非阻塞I/O

I/O复用(select 和poll)

信号驱动I/O

异步I/O

阻塞I/O模型图:

非阻塞IO模型图解:

IO复用模型图解:

信号驱动IO图解:

异步IO模型图解:

同步IO引起进程阻塞,直至IO操作完成。

异步IO不会引起进程阻塞。

IO复用是先通过select调用阻塞。

好了,上图已经解释的很清楚了,再来一张书中的综合图解:

以上这些应该解释的足够清楚了吧 ~~~

© 著作权归作者所有

上一篇: soapui测试webservice
下一篇: 太简洁了 。
shawn chen

shawn chen

粉丝 9
博文 25
码字总数 11754
作品 2
海淀
程序员
私信 提问
加载中

评论(2)

imqipan
imqipan
79还是图片比较直观!
ll124884135
ll124884135
顶。。。。
Unix 网络 IO 模型: 同步异步, 傻傻分不清楚?

出处 阻塞 IO, 非阻塞 IO, 同步 IO, 异步 IO 这些术语相信有不少朋友都也不同程度的困惑吧? 我原来也是, 什么同步非阻塞 IO, 异步非阻塞 IO 的, 搞的头都大了. 后来仔细读了一遍 《UNIX 网络...

永顺
2017/11/29
0
0
IO的阻塞与非阻塞、同步与异步以及Java网络IO交互方式

最近工作中,接触到了Java网络编程方面的东西:Socket、NIO、MongoDB等,也看了tomcat的源码,也加强了线程方面的知识,也使用了MINA这样的框架。感觉获益良多,原本技术上的薄弱环节也在慢慢...

Zero零_度
2016/02/22
121
0
如何理解阻塞和非阻塞同步和异步

同步与异步 同步和异步关注的是消息通信机制,所谓同步,就是在发出一个调用时,在没有得到结果之前,该调用就不返回。但是一旦调用返回,就得到返回值了。换句话说,就是由调用者主动等待这...

清风与你
2017/04/10
0
0
【面试】迄今为止把同步/异步/阻塞/非阻塞/BIO/NIO/AIO讲的最清楚的好文章(快快珍藏)

网上有很多讲同步/异步/阻塞/非阻塞/BIO/NIO/AIO的文章,但是都没有达到我的心里预期,于是自己写一篇出来。 常规的误区 假设有一个展示用户详情的需求,分两步,先调用一个HTTP接口拿到详情...

中关村的老男孩
2019/06/15
68
0
IO的阻塞与非阻塞、同步与异步以及Java网络IO交互方式

最近工作中,接触到了Java网络编程方面的东西:Socket、NIO、MongoDB等,也看了tomcat的源码,也加强了线程方面的知识,也使用了MINA这样的框架。感觉获益良多,原本技术上的薄弱环节也在慢慢...

毛爷爷夸我帅
2015/03/27
49
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Batch 配置一个步骤(Step)

如我们在 域语言(Domain Language)章节中讨论的内容一致,一个 步骤(Step)是一个独立封装了执行顺序的批量作业(Job),并且包含有用于定义和控制一个批量作业的所有独立信息。 针对这个...

honeymoose
32分钟前
16
0
郑州哪里可以开五金工具发票-郑州新闻网

郑州哪里可以开五金工具发票【1.3.2 - 2.9.3.0 - 0.5.6.8.】李生,adb的全称为Android Debug Bridge,是Android手机通用的一个USB端口。百度CarLife的部分车机采用...

提供格
今天
38
0
郑州哪里可以开五金材料发票-郑州新闻网

郑州哪里可以开五金材料发票【1.3.2 - 2.9.3.0 - 0.5.6.8.】李生,adb的全称为Android Debug Bridge,是Android手机通用的一个USB端口。百度CarLife的部分车机采用...

法放饭
今天
43
0
郑州哪里可以开劳保用品发票-郑州新闻网

郑州哪里可以开劳保用品发票【1.3.2 - 2.9.3.0 - 0.5.6.8.】李生,adb的全称为Android Debug Bridge,是Android手机通用的一个USB端口。百度CarLife的部分车机采用...

多徐重
今天
31
0
centos php ppt转图片

参考:https://blog.csdn.net/aituochang1886/article/details/101167564 安装 Unoconv 参考: https://www.licongying.cn/2018/10/linux-centos-install-unoconv-liboffice/ https://blog.c......

四季变幻
今天
29
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部