Share via


中斷用戶端連線

一旦用戶端完成傳送和接收資料,用戶端就會中斷與伺服器的連接,並關閉通訊端。

中斷連線並關閉通訊端

  1. 當用戶端完成將資料傳送至伺服器時,可以呼叫 shutdown 函式來指定SD_SEND關閉通訊端的傳送端。 這可讓伺服器釋放此通訊端的一些資源。 用戶端應用程式仍然可以在通訊端上接收資料。

    // shutdown the send half of the connection since no more data will be sent
    iResult = shutdown(ConnectSocket, SD_SEND);
    if (iResult == SOCKET_ERROR) {
        printf("shutdown failed: %d\n", WSAGetLastError());
        closesocket(ConnectSocket);
        WSACleanup();
        return 1;
    }
    
  2. 當用戶端應用程式完成接收資料時,會呼叫 closesocket 函式以關閉通訊端。

    使用 Windows Sockets DLL 完成用戶端應用程式時,會呼叫 WSACleanup 函式來釋放資源。

    // cleanup
    closesocket(ConnectSocket);
    WSACleanup();
    
    return 0;
    

完成用戶端原始程式碼

使用 Winsock 消費者入門

Winsock 用戶端應用程式

在用戶端上傳送和接收資料