关于NetworkStream.DataAvailable和NetworkStream.Read的几个问题

时间:2018-01-26 18:04:43

标签: c# .net sockets tcp networkstream

我正在对使用NetworkStream发送数据和接收数据的应用程序进行故障排除。我有几个与NetworkStream.DataAvailable和NetworkStream.Read

相关的问题

这是代码:

    try
    {
     if(DataAvailable)
     {
      numberOfBytesRead = myNetworkStream.Read(myReadBuffer, 0, myReadBuffer.Length);
      myCompleteMessage.AppendFormat("{0}", Encoding.ASCII.GetString(myReadBuffer, 0, numberOfBytesRead));
     }

   catch
     {}
   }

服务器每次都以5个数据包发回数据。

问题:

上面的read方法是接收所有数据包还是仅接收随机数据包(1-5)?

在读取数据后,NetworkStream.DataAvailable是否重置为False?如果到达新数据包,则再次设置为True(假设问题1的答案是随机数据包)?

感谢!!!

0 个答案:

没有答案