Déconnexion du serveur
Une fois que le serveur a terminé de recevoir les données du client et de renvoyer les données au client, le serveur se déconnecte du client et arrête le socket.
Pour déconnecter et arrêter un socket
Lorsque le serveur a terminé d’envoyer des données au client, la fonction d’arrêt peut être appelée en spécifiant SD_SEND pour arrêter le côté envoi du socket. Cela permet au client de libérer certaines des ressources pour ce socket. L’application serveur peut toujours recevoir des données sur le socket.
// 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; }
Lorsque l’application cliente reçoit des données, la fonction closesocket est appelée pour fermer le socket.
Lorsque l’application cliente est terminée à l’aide de la DLL Windows Sockets, la fonction WSACleanup est appelée pour libérer des ressources.
// cleanup closesocket(ClientSocket); WSACleanup(); return 0;
Code source du serveur complet
Rubriques connexes