文章目录 前言 一、异步I/O模型 二、多线程 三、利用异步I/O模型和多线程解决阻塞问题 四、实现客户端队列 总结 前言 C++打造局域网聊天室第八课: 异步I/O模型及多线程 一、异步I/O模型 解决阻塞与非阻塞的好方法就是利用Windows提供的各种异步I/O模型 select选择模型 WSAAsyncSelect异步选择模型 WSAEventSelect事件选择模型 重叠I/O模型 完成端口模型 这里使用select选择模型 int select( int nfds, // 忽略,只是为了与Berkeley套接字兼容。一般调用函数时直接写0即可 fd_set* readfds, // 可读性Socket集合,比较常用。数据可读、连接已