整理io中的同步异步,阻塞非阻塞概念
来源:互联网 发布:gif文字制作软件 编辑:程序博客网 时间:2024/05/23 23:32
整理阻塞io,非阻塞io,同步io,异步io的相关概念
阻塞、非阻塞:表示可能出现的状态,得到结果前线程会不会阻塞。请求不能立即得到应答,需要等待,那就是阻塞;否则可以理解为非阻塞。
区别就在于:数据拷贝的时候进程是否阻塞!在下面看到Linux5中io模型分析就可以知道。
同步、异步:表示一种协作方式,是从全局更高的角度 “进程之间 合作的方式。指二个线程之间的交互方式。
区别就在于:应用程序的调用是否立即返回!
5种IO模型在这里,就不复制粘贴了。5种io模型
IO复用,Select,pool理解
/O复用原理:让应用程序可以同时对多个I/O端口进行监控以判断其上的操作是否可以进行,达到时间复用的目的。在书上看到一个例子来解释I/O的原理,
我觉得很形象,如果用监控来自10根不同地方的水管(I/O端口)是否有水流到达(即是否可读),那么需要10个人(即10个线程或10处代码)来做这件事。
如果利用某种技术(比如摄像头)把这10根水管的状态情况统一传达到某一点,那么就只需要1个人在那个点进行监控就行了,而类似与select或epoll这样的
多路I/O复用机制就好比是摄像头的功能,它们能够把多个I/O端口的状况反馈到同一处,比如某个特定的文件描述符上,这样应用程序只需利用对应的select()
或epoll_wait()系统调用阻塞关注这一处即可。
就是一个select同时监控多个文件,应用程序阻塞在select上。
详细地址:io复用模型
还有知乎上一篇很好的文章:阻塞非阻塞io
0 0
- 整理io中的同步异步,阻塞非阻塞概念
- IO概念---同步/异步、阻塞/非阻塞
- 广义同步&异步 阻塞&非阻塞 及 网络IO中的同步&异步,阻塞&非阻塞
- IO模型 阻塞 非阻塞 同步 异步概念对比区分
- 网络编程中的阻塞,非阻塞、同步,异步概念
- network中的IO同步,异步,阻塞和非阻塞
- 关于网络IO中的同步、异步、阻塞、非阻塞
- 阻塞、非阻塞、同步、异步概念
- 同步,异步,阻塞,非阻塞概念
- 阻塞 非阻塞 同步 异步 概念
- 同步,异步,阻塞,非阻塞概念理解
- IO - 同步,异步,阻塞,非阻塞
- IO - 同步,异步,阻塞,非阻塞
- [zz]IO - 同步,异步,阻塞,非阻塞
- io的同步/异步,阻塞/非阻塞
- IO - 同步,异步,阻塞,非阻塞
- io-同步 异步 阻塞 非阻塞
- IO - 同步,异步,阻塞,非阻塞
- 安卓意图跳转动画overridePendingTransition
- 自动换行的button
- Wireshark网络分析实战笔记(一)抓包过滤器
- Java接口回调是个什么玩意儿
- css实现强制不换行/自动换行/强制换行
- 整理io中的同步异步,阻塞非阻塞概念
- objc使用什么机制管理对象内存(内存管理方式有哪些)
- Windows API
- GitHub 优秀的 Android 开源项目
- iOS开发之蓝牙通信
- Ibatis中的动态SQL:isNotNull,isPropertyAvailable,isNotEmpty用法
- jquery全选和反选
- JSP IE异步提交设置断点,有时走,有时不走,ajax缓存问题
- 内存管理的原则