Linux Socket: Wie erkenne ich ein nicht verbundenes Netzwerk in einem Client-Programm?

Ich debugge ein C-basiertes Linux-Socket-Programm. Da alle Beispiele auf Websites verfügbar sind, habe ich die folgende Struktur angewendet:

sockfd= socket(AF_INET, SOCK_STREAM, 0);

connect(sockfd, (struct sockaddr *) &serv_addr, sizeof(serv_addr));

send_bytes = send(sockfd, sock_buff, (size_t)buff_bytes, MSG_DONTWAIT);

Ich kann die Trennung feststellen, wenn der entfernte Server sein Serverprogramm schließt. Wenn ich jedoch das Ethernet-Kabel aus der Steckdose ziehe, gibt die Sendefunktion weiterhin positive Werte anstatt -1 zurück.

Wie kann ich die Netzwerkverbindung in einem Client-Programm überprüfen, vorausgesetzt, ich kann die Serverseite nicht ändern?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage