Bonjour tout le monde,
je suis en train de développer une application client/serveur en C.
J'utilise les socket unix.
Je souhaite savoir s'il est possible de détecter qu'un client s'est déconnecté (ou que le lien réseau est rompu).
Je sais qu'il est possible de tester le retour de la procédure 'send' lors d'une émission serveur -> client, mais je ne souhaite pas faire cela de cette manière pour les raisons suivantes:
- Les données échangées entre le client et le serveur sont fixes de 16 octets, et je doit donc envoyer 16 octets pour ne pas faire bugguer le protocole de réception du client,
- Le serveur doit traiter des flux de données massifs, et je souhaite donc éviter d'envoyer régulièrement 16 octets pour savoir si la connexion est toujours active (pour optimiser les performances).
J'ai essayé d'utiliser 'send' avec des données nulles (0 octets) mais cela ne fonctionne pas toujours (par exemple, si j'ai 16 clients connectés, seul 2 ou 3 sont vus déconnectés).
Existe t'il une procédure pour savoir si la connexion avec le client est toujours active ?
Merci
Partager