网络IO模型?什么是多路复用IO?select和epoll 的差别?

同步阻塞IO-BIO

实际使用场景:在Java中使用线程池的方式去连接数据库,使用的就是同步阻塞IO模型

同步非阻塞 IO-NIO(New IO)

如果涉及到IO操作,那么当前的线程不会被阻塞,而是会去处理其他业务代码,然后等过段时间再来查询 IO 交互是否完成

异步非阻塞 IO-AIO

IO操作已经完成后,再给线程发出通知

IO 多路复用

一个线程处理多个IO流;

在Linux中,操作系统提供了select、poll 和 epoll 三种 IO多路复用机制

select机制: 可以监听多少个socket? -- 1024 -- 需要遍历fd集合,才能找到就绪的描述符

poll机制:和select差不多,需要遍历fd集合,才能找到就绪的描述符。

epoll机制:可以监听就绪的fd

参考:https://zhuanlan.zhihu.com/p/462924941

相关推荐
花间相见6 小时前
【计算基础|网络14】网络层:IP、ICMP 与 ping
网络·网络协议·tcp/ip
半杯咖啡半行码7 小时前
Linux 驱动开发入门:内核模块编程基础
linux·服务器·网络
智能直播8 小时前
RK3528 V4L2 框架 UVC 接口自动获取 H.264 / MJPEG / YUYV 格式:从内核采集到硬解分发
java·网络·实时音视频·视频编解码·h.264
睿智の男孩8 小时前
MIG IP核对DDR3的输出时序分析记录
网络·网络协议·tcp/ip
艾芯微科技8 小时前
高充放电流锂电充放 SoC:ETA9885E10,便携储能、小移动电源 BOM 选型笔记
网络·单片机·嵌入式硬件·集成测试·51单片机
2401_868534789 小时前
数据交换方式
服务器·网络
艾芯微科技9 小时前
钰泰 ETA6973PQ3Y|QFN3×3 2A 同步降压 Buck,I2C 可配置多档输出,动态调压 PMIC
网络·单片机·嵌入式硬件·fpga开发·集成测试·51单片机
默|笙9 小时前
【Linux网络】_udp_socket(认识)
linux·网络·udp
2401_868534789 小时前
以太网物理层标准
服务器·网络