完成端口的一个奇怪的问题.高手进来.
akun 2006-09-14 03:53:52 accept创建了一个连接1,WSARecv发起一个重叠recv操作,close此连接socket;
立刻accetp创建连接2,重用了上面socket,WSARecv发起一个重叠recv操作,
然后重叠操作完成,接收的数据是连接2的数据,但是却写入连接1发出的重叠
recv操作指定的buffer中,而且返回的lpOverlapped也是连接1的;
GetQueuedCompletionStatus 没有先返回连接1的重叠recv
操作失败,却先处理了连接2的重叠recv操作,completeKey是连接2的,数据也是,就是buffer
和lpOverlapped是连接1的。
高分求组,在线等...