共用方式為


中斷伺服器連線

一旦伺服器完成從用戶端接收數據,並將數據傳回客戶端,伺服器就會中斷與客戶端的連線,並關閉套接字。

若要中斷連線並關閉套接字

  1. 伺服器完成將數據傳送至用戶端後,可以呼叫 關閉 函式,指定使用 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;
    }
    
  2. 當用戶端應用程式完成接收數據時,會呼叫 closesocket 函式來關閉套接字。

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

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

完成伺服器原始程式碼

開始使用 Winsock 指南

Winsock Server 應用程式

在伺服器上接收和傳送數據

執行 Winsock 用戶端和伺服器程式代碼範例