网络IO模型_01
2024-09-08 17:58:59
4种情况:
1、输入操作:等待数据到达套接字接收缓冲区;
2、输出操作:等待套接字发送缓冲区有足够的空间容纳将要发送的数据;
3、服务器接收连接请求:等待新的客户端连接请求的到来;
4、客户端发送连接请求:等待服务器回送客户端的发起的SYN所对应的ACK。
5种网络IO模型:
·阻塞IO:等待完成
·非阻塞IO:不定时来询问
·IO复用:复用通道,根据请求来完成
·异步IO:多搞几个请求
·信号驱动IO:通过信号来通知是否可以
IO复用中的select和poll、epoll?
答:就是判断哪个请求是可以相应的。
select和epoll的区别?
答:select仅知道有I/O事件发生,并不知道是哪个流,所以只能无差别轮询。O(n)
epoll会把哪个流发生了什么样的I/O给搞明白。O(n)
poll本质上可select差不多,但是基于链表的,所以没啥最大链接数限制。
最新文章
- 06OC之内存管理
- 一次由于字符集问题引发的MySQL主从同步不一致问题追查
- OS X下开发!ios系统贪食蛇!——from cocos2d-x 3.0
- 【解决】Oracle数据库实现ID自增长
- 配置apache+trac环境
- 常用的MySQL图形化管理软件
- 通过SSHFS在RHEL中安全的挂载远程Linux/UNIX目录或文件系统--转载
- Java学习日记-2.3 基本数据类型和对象所占内存空间大小
- C语言里面关于数组的一个容易忽视的小细节
- ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist
- 手机微博(weibo.cn)模拟登录及页面解析
- 多功能设备mfd驱动
- [BOI2007]Mokia 摩基亚
- shell编程学习笔记(五):Shell中脚本的参数
- js使用锚点回到顶部
- Web服务器缓存
- tomcat设置debug模式
- 自定义两个控件,一个是显示图标和文字的矩形,一个是带边框的label(但是不是label)
- Java打印整数的二进制表示(代码与解析)
- 唯品会的Service Mesh三年进化史 2018 年 Service Mesh 元年,被誉为是下一代微服务架构