【问题标题】:Streamreader causing while loop to stopStreamreader 导致 while 循环停止
【发布时间】:2014-10-22 08:41:20
【问题描述】:

我正在尝试使用流读取器来捕获通过 TCPClient 发送的字符串,但是它不会不断地汇集,它只会通过循环之一。

private void recMessage()
    {
        while (true)
        {
            String listAsString = "";
            try
            {
                listAsString = streamReader.ReadLine();
            }
            catch (Exception e)
            {
                Interaction.MsgBox("Lost connection with server./n/n" + e);
                break;
            }


            newSprite(listAsString);

            }
        }
     }

它似乎停在 listAsString = streamReader.ReadLine();

有什么想法吗?

谢谢

詹姆斯

【问题讨论】:

    标签: loops while-loop tcpclient streamreader steam


    【解决方案1】:

    ReadLine 阻塞,直到有足够的数据到达或流结束。让你的代码处理这个事实。可能,您应该将阻塞 IO 移至后台线程。或者更好的是,使用await

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-19
      • 1970-01-01
      • 2010-09-26
      • 2013-09-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多