サーバーが文字列メッセージをクライアントに継続的に送信し、クライアントがネットワークストリームを介してそのメッセージを読み取るWindowsアプリケーション(サーバークライアント通信)を開発しています。ネットワーク ストリーム クライアントからメッセージを読み取った後、ネットワーク ストリームをフラッシュしますが、古いメッセージはネットワーク ストリームに残ります。これは、サーバー側のネットワークストリームにメッセージを継続的に書き込んでいるために発生していると思います。
コード クライアント:
clientSocket.Connect("192.XXX.X.XX", 8888);
label1.Text = "Client Socket Program - Server Connected ...";
NetworkStream serverStream = clientSocket.GetStream();
string returndata = "";
while ((true))
{
byte[] inStream = new byte[10025];
serverStream.Read(inStream, 0, (int)clientSocket.ReceiveBufferSize);
returndata = System.Text.Encoding.ASCII.GetString(inStream);
serverStream.Flush();
}
サーバ側 :
TcpListener serverSocket = new TcpListener(8888);
TcpClient clientSocket = default(TcpClient);
NetworkStream networkStream = null;
serverSocket.Start();
clientSocket = serverSocket.AcceptTcpClient();
networkStream = clientSocket.GetStream();
Byte[] sendBytes = Encoding.ASCII.GetBytes(task);
networkStream.Write(sendBytes, 0, sendBytes.Length);
networkStream.Flush();
この問題を解決する方法を教えてください。