IO多路复用机制详解(转)

服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型。 (2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求socket被设置为NONBLOCK。注意这里所说的NIO并非Java的NIO(New IO)库。 (3)IO多路复用(IO Multiplexing):即经典的反应器Reactor设计模式,有时也称为异步阻塞IO,Java中的Selector和Linux中的epoll都是这种模型。高性能并发服务程序使用IO多路复用模型+多线程任务处理的架构。 (4)异步IO(Asynchronous IO):即经典的Proactor设计模式,也称为异步非阻塞IO。不经常用。 高性能I/O设计模式Reactor和Proactor:https://blog.csdn.net/xiongping_/article/details/45152333 select、poll、epoll之间的区别(搜狗面试) 转自:https://blog.csdn.net/baixiaoshi/article/details/48708347