タイトルはほとんどそれをすべて言います。クライアントからの入力を待機している受信スレッドがありますが、何も読み取られない場合、読み取った 0 バイトを返す代わりに -1 を返しますが、エラーは返されません。
なぜこの関数がそのように動作するのかについてのヒントはありますか?
ありがとう
編集:
これが受信コードです
sockaddr_in remote;
remote.sin_family = AF_UNSPEC;
remote.sin_addr.s_addr = inet_addr( _host.c_str() );
remote.sin_port = htons( atoi( _port.c_str() ) );
int remoteSize = sizeof(remote);
bytesRead = recvfrom(_os.socket,
(char*)buffer,
bufferSize,
0,(SOCKADDR*)&remote, &remoteSize);
_error = WSAGetLastError();
私が実行しているときbytesRead
は、-1 と_error
0 です。