Desconexión del cliente
Una vez completado el envío y recepción de datos, el cliente se desconecta del servidor y apaga el socket.
Para desconectar y apagar un socket
Cuando el cliente haya terminado de enviar datos al servidor, se puede llamar a la función shutdown especificando SD_SEND para apagar el lado de envío del socket. Esto permite al servidor liberar algunos de los recursos de este socket. La aplicación cliente todavía puede recibir datos en el socket.
// 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; }
Cuando la aplicación cliente termina de recibir datos, se llama a la función closesocket para cerrar el socket.
Cuando la aplicación cliente se completa con el archivo DLL de Windows Sockets, se llama a la función WSACleanup para liberar recursos.
// cleanup closesocket(ConnectSocket); WSACleanup(); return 0;
Código fuente completo del cliente
Temas relacionados