Linux网络学习【五种IO模型与⾮阻塞IO】在Linux网络编程中,让程序能够收发数据只是起点.当服务器需要同时处理大量连接时,更关键的问题是:数据尚未到达时,线程是否应该一直等待?如何兼顾多个连接?收到“可以读取”的通知,是否意味着数据已经读取完成? 理解这些问题,需要从具体的读写接口进一步深入IO模型,弄清应用程序与内核之间如何协作.理解IO模型,可以从一次典型的套接字读取入手:等待数据就绪,再将数据从内核缓冲区复制到用户缓冲区.阻塞 IO、非阻塞IO、IO多路复用、信号驱动IO和异步IO,在等待方式、调用返回时机以及通知含义上各有区别.其中,