windows socket 传输异常,求解惑?
以下红色部分 发送程序,在死循环中为何只执行一次呢,而后面的绿色部分却可以正常每100ms执行一次 ???
while ( true )
{
cin.getline(SendBuffer, sizeof(SendBuffer));
Ret = send(CientSocket, SendBuffer, (int)strlen
(SendBuffer), 0);
Ret = send(CientSocket, "this is a socket program
test !", (int)strlen("this is a socket program
test !")+1, 0);
Sleep(100);
if ( Ret == SOCKET_ERROR )
{
cout<<"Send Info Error::"<<GetLastError()<<endl;
break;
}
}
[解决办法]
什么叫做红色的部分发送程序在死循环中只执行一次?后面的绿色部分却可以正常100ms执行一次?
[解决办法]
你设个断点看看strlen(SendBuffer)的值是多少,有可能是0吧。
[解决办法]
说明你红色那个send函数返回了SOCKET_ERROR 呗