Bonjour,
je suis en train de développer un logiciel en C++/Linux Red Hat qui ouvre une socket pour se connecter en TCP/IP à un équipement distant (alimentation électrique).
Une fois la connexion établie, mon logiciel envoie des ordres chaque seconde pour faire monter progressivement la tension de 0 à 120V.
Pb: lorsque la connexion est rompue (câble réseau débranché par inadvertance ou pb réseau), les messages s'accumulent dans la pile TCP, et lorsque la connexion est rétablie, tous les messages stockés dans la pile sont envoyés en bloc ce qui est dangereux pour l'équipement.
D'où mes questions:
1. Comment détecter la déconnexion afin d'interrompre l'envoi des consignes ? (sachant qu'il n'y a pas d'acquittement, la solution est peut-être de surveiller l'évolution de la taille de la pile, mais comment faire en C++/Linux ?)
2. Comment supprimer les messages accumulés dans la pile ?
Merci.
Partager