代码改变世界

学习笔记:神秘的 IOCP 完成端口(转载)

2013-11-08 14:53 by 无情的巴乌, 389 阅读, 0 推荐, 收藏,
摘要:原文地址:学习笔记:神秘的 IOCP 完成端口作者:abcd【什么是IOCP】是WINDOWS系统的一个内核对象。通过此对象,应用程序可以获得异步IO的完成通知。这里有几个角色:角色1:异步IO请求者线程。简单的说,就是调用WSAxxx()函数(例如函数WSARecv,WSASend)的某个线程。 由于是“异步”的,当角色1线程看到WSAxxx()函数返回时,它并不能知道本次IO是否真的完成了。 注:当WSAxxx返回成功true时,实际已经读到或发送完数据了(同步的获得IO结果了)。 为了统一逻辑,我们还是要放到角色2线程中,统一处理IO结果。 角色2:异步IO完成事件处理线程。简单的... 阅读全文