GetQueuedCompletionStatus检测到客户端socket关闭,该socket重新打开之后如何继续保持通讯?
moany 2006-02-22 04:18:04 代码:
while(1)
{
bRet = GetQueuedCompletionStatus(pCServerDlg->g_hCompletionPort, // Completion Port
&BytesTransferred,
(LPDWORD)&PerHandleData,
(LPOVERLAPPED*)&PerIoData, // OVERLAPPED
INFINITE
);
...
如果检测到客户端的socket关闭了(BytesTransferred= 0),为了避免内存泄漏,执行:
closesocket(PerHandleData->hClntSock);
free(PerHandleData);
free(PerIoData);
可是该socket重新打开之后也连不上服务器了,大家遇到过这样的问题吗?