1

我注意到,当我调用 closesocket 时,WSARecvFrom 的完成例程(到那时等待传入数据)正在被 dwError=0 和 cbTransferred=garbage 触发,尽管该套接字没有待处理的传入数据。

当我关闭套接字时,有什么方法可以不调用它?我试图在closesocket之前调用shutdown,但它没有帮助。

4

1 回答 1

1

WSARecvFrom() 本身返回什么值?我自己没有使用过 WSARecvFrom(),但 MSDN 说 dwError 是完成状态,所以我想 0 表示实际错误,或者没有数据。

另外,在调用 closesocket() 之前是否调用了 CancelIo()?

于 2009-06-04T00:01:22.197 回答