18,356
社区成员
发帖
与我相关
我的任务
分享
对于已经连接的一个socket上,当服务器端执行closesocket()关闭这个socketid时,为什么会有好多次GetQueuedCompletionStatus的返回,并且返回值都时0,问题到底出在哪里?
我也遇到同样的问题,怎么解决?
BOOL bRet = GetQueuedCompletionStatus(pParam->pIOCPModel->m_hIOCP, &dwByteTransfer, (PULONG_PTR)&pSockContextVoid, &pOverLapped, INFINITE);
if (!bRet)
{ //此处代码为什么同一个客户端断开引起进来好多次
DWORD dwError = GetLastError();
if (dwError == 0)
{
continue;
}
if (!pParam->pIOCPModel->HandleError(pSockContext,dwError))
{
break;
}
continue;
}