中斷伺服器連線
一旦伺服器完成從用戶端接收資料並將資料傳回用戶端,伺服器就會中斷與用戶端的連線,並關閉通訊端。
中斷連線並關閉通訊端
當伺服器傳送資料至用戶端時,可以呼叫 shutdown 函式,指定SD_SEND關閉通訊端的傳送端。 這可讓用戶端釋放此通訊端的一些資源。 伺服器應用程式仍然可以在通訊端上接收資料。
// shutdown the send half of the connection since no more data will be sent iResult = shutdown(ClientSocket, SD_SEND); if (iResult == SOCKET_ERROR) { printf("shutdown failed: %d\n", WSAGetLastError()); closesocket(ClientSocket); WSACleanup(); return 1; }
當用戶端應用程式完成接收資料時,會呼叫 closesocket 函式來關閉通訊端。
當用戶端應用程式使用 Windows Sockets DLL 完成時,會呼叫 WSACleanup 函式來釋放資源。
// cleanup closesocket(ClientSocket); WSACleanup(); return 0;
完整伺服器原始程式碼
相關主題