Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Probleme de flush sur un TcpClient

1 réponse
Avatar
Delf
Bonjour.

J'ai écrit 2 services : l'un fait office de serveur, l'autre de client.

Côté serveur :

...

StreamWriter myWriter = new StreamWriter(m_TcpClient.GetStream());
StreamReader myReader = new StreamReader(m_TcpClient.GetStream());

myWriter.AutoFlush = true;

...

// Envoie de la réponse 'response' au client

try
{
myWriter.WriteLine(response);
}
catch (Exception e)
{
Server.WriteLogger(3, "Request::RunRequest()",
"Impossible to send the response to the client : " +
e.Message.ToString() + ", " + e.StackTrace.ToString());
}

J'obtiens de temps en temps l'exception suivante :

Impossible to send the response to the client : Unable to write data to
the transport connection: Une connexion établie a été abandonnée par un
logiciel de votre ordinateur hôte., at
System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset,
Int32 size)
at System.IO.StreamWriter.Flush(Boolean flushStream, Boolean
flushEncoder)
at System.IO.StreamWriter.Write(Char[] buffer, Int32 index, Int32 count)
at System.IO.TextWriter.WriteLine(String value)
at upService.Request.RunRequest() in
D:\Projects\Uptime-Challenge\Service\Request.cs:line 106

Côté client, je précise que la réponse est bien reçue.
Quelqu'un sait d'où ça provient ?
Merci anticipé.

--
Delf

1 réponse

Avatar
Paul Bacelar
Dés que j'ai un problème réseaux, j'utilise un sniffer réseaux, histoire de
vraiment savoir ce qui se passe.
Ethereal(http://www.ethereal.com/)
Packetyzer(http://www.networkchemistry.com/products/packetyzer/index.php#dow
nload)
--
Paul Bacelar

"Delf" wrote in message
news:42e5ddd6$0$8456$
Bonjour.

J'ai écrit 2 services : l'un fait office de serveur, l'autre de client.

Côté serveur :

...

StreamWriter myWriter = new StreamWriter(m_TcpClient.GetStream());
StreamReader myReader = new StreamReader(m_TcpClient.GetStream());

myWriter.AutoFlush = true;

...

// Envoie de la réponse 'response' au client

try
{
myWriter.WriteLine(response);
}
catch (Exception e)
{
Server.WriteLogger(3, "Request::RunRequest()",
"Impossible to send the response to the client : " +
e.Message.ToString() + ", " + e.StackTrace.ToString());
}

J'obtiens de temps en temps l'exception suivante :

Impossible to send the response to the client : Unable to write data to
the transport connection: Une connexion établie a été abandonnée par un
logiciel de votre ordinateur hôte., at
System.Net.Sockets.NetworkStream.Write(Byte[] buffer, Int32 offset,
Int32 size)
at System.IO.StreamWriter.Flush(Boolean flushStream, Boolean
flushEncoder)
at System.IO.StreamWriter.Write(Char[] buffer, Int32 index, Int32


count)
at System.IO.TextWriter.WriteLine(String value)
at upService.Request.RunRequest() in
D:ProjectsUptime-ChallengeServiceRequest.cs:line 106

Côté client, je précise que la réponse est bien reçue.
Quelqu'un sait d'où ça provient ?
Merci anticipé.

--
Delf