1. 程式人生 > >socket recv()函式返回0的一種情況

socket recv()函式返回0的一種情況

假設使用Socket基於TCP通訊協議進行C/S通訊程式設計,客服端已經成功與服務端建立tcp連線,並且可以正常進行收發資料。

當一段時間後,服務端的程式如果呼叫closesocket(sClient);WSACleanup();函式關閉socket, 

那麼客戶端的recv()將會返回0;

如果服務端沒有呼叫closesocket(sClient);而只調用WSACleanup();或直接關閉程式,

那麼客戶端的recv()將會返回-1(SOCKET_ERROR)。

以上結果在區域網經過實際驗證。