我注意到当我调用closesocket时,使用dwError=0和cbTransferred=garbage触发了WSARecvFrom的完成例程(此时等待传入的数据),尽管该套接字没有等待传入的数据。
当我关闭套接字时,有没有办法不调用它?我试着在closesocket之前调用shutdown,但是没有帮助。
发布于 2009-06-04 00:01:22
WSARecvFrom()本身返回什么值?我自己没有使用过WSARecvFrom(),但是MSDN说dwError是一个完成状态,所以我认为0意味着一个实际的错误,或者没有数据。
另外,您是否在调用closesocket()之前调用了CancelIo()?
https://stackoverflow.com/questions/793888
复制相似问题