11.14并发编程的IO模型
Posted zhouhai007
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11.14并发编程的IO模型相关的知识,希望对你有一定的参考价值。
1..网络IO的两个阶段 waitdata :网络传输的等待时间
Copydata:应用程序复制到系统内存的时间
2.阻塞IO模型
多线程 多进程 还是 线程池 进程池等 都是阻塞
3.非阻塞IO模型
在非阻塞io中 需要不断循环询问操作是否有需要处理的数据
这一来 对应程序而言 效率确实高
但是操作系统而言 你的程序就像一个病毒 CPU将被你强行霸占
当你的TCP程序 没有连接 没有数据接收 没有数据发送时 就是在做无用循环 浪费系统资源
4.多路复用
单个进程就可以同时处理多个网络连接的io
原理: 就是select这个function会不断的轮回询问所有的socket 有没有数据daoda, 一旦有数据到达就会通知用户进程
Select是阻塞的
结论: select 不适合单个链接,多个链接才能提现它的优势
5.异步IO模型
在wiatdata的时间去做其他事情,等有数据了会发送signal通知
以上是关于11.14并发编程的IO模型的主要内容,如果未能解决你的问题,请参考以下文章