iocp (I/O Completion Port,I/O 完成端口 ) 是 Windows 异步通讯机制
完成端口大概的处理流程:
1:创建一个完成端口。
2:创建一个线程A。
3:A线程循环调用GetQueuedCompletionStatus()函数来得到IO操作结果,这个函数是个阻塞函数。
4:主线程循环里调用accept等待客户端连接上来。
5:主线程里accept返回新连接建立以后,把这个新的套接字句柄用CreateIoCompletionPort关联到完成端口,然后发出一个异步的WSASend或者WSARecv调用,
因为是异步函数,WSASend/WSARecv会马上返回,实际的发送或者接收数据的操作由WINDOWS系统去做。

ICOP Win使用I/O完成端口实现异步通讯,通过创建完成端口、线程循环获取IO结果、主线程接受新连接并发起异步WSASend/WSARecv等方式实现高效并发处理。系统完成IO操作后,结果送至完成端口供线程处理,形成高效通讯模型。
最低0.47元/天 解锁文章
2511

被折叠的 条评论
为什么被折叠?



