TCPClient et détection de perte de communication avec le serveur
Bonjour,
J'utilise a classe TCPClient pour me connecter avec mon serveur, de la manière suivante:
Code:
1 2
| tcpclient = new TcpClient(device.Adresse_IP, (Int32.Parse(device.Port)));
m_ReceptionStream = tcpclient.GetStream(); |
Sur ce dernier, je ne fais qu'attendre des données, et donc à aucun moment je ne lui en envoie.
Mon NetworkStream est utilisé seulement en lecture dans le thread qui attend les données:
Code:
nb_bytes_recus += m_ReceptionStream.Read(m_Received, 0 + nb_bytes_recus, m_Received.Length - nb_bytes_recus);
Lorsque je perds la connexion avec mon serveur (câble débranché, par exemple) je tombe dans l'exception du Read que 2 minutes et 50 secondes après la coupure.
J'ai essayé, dans un autre thread en parallèle, de faire un try/catch sur un Write dans le NetworkStream, mais aucune exception n'est levée quand la connexion avec le serveur est coupée.
Dois je me tourner vers la classe socket ou alors je passe à coté de la vérité?
En vous souhaitant une bonne soirée.
Léo V.V.