How to resolve WSAEWOULDBLOCK error

I have a win7 application in which I send b \ w data to 2 clients on a TCP connection. During testing, I found out that I often get an error WSAEWOULDBLOCKin my socket. To resolve this error, I put a while loop in it for ex.

do  
{  
size_t value = ::send();  /*with proper arguments*/
}while(GetLastError() == 10035);

So, if I receive error 10035, I will resend the data.

But now I see that this while loop runs endlessly, and my application is in the form of a deadlock state. I tried to increase the size of the socket, but still useless.

If anyone knows how to resolve the error WSAEWOULDBLOCK, please let me know.

0
source share
1 answer

WSAEWOULDBLOCK , , . , . select(), , -. win32 , WaitForMultipleObjects , .

BTW: "", : , - , , , . select(), , , , .

. , socket(), /recv.

+5

All Articles