请有人帮助我如何从 CAsyncSocket 类中捕获套接字操作的错误。
如果我这样做:
int iLen = recv(socket, socketBuffer, sizeBuffer, 0);
if(iLen==SOCKET_ERROR) {
//handle error here
} else {
//do something with the received data
}
它总是返回错误,即WSAEWOULDBLOCK
,对于 send()、connect() 等其他操作也是如此。
根据 MSDN,这不是致命错误,并且必须经过一段时间才能完成操作。
那么我如何才能真正检查我的程序每次正确执行 recv() 或 send() 时呢?