考虑以下:
private void Read()
{
StreamReader r = new StreamReader(clientObject.GetStream());
string str = r.ReadLine();
if ((str == null) || (str == "")) { Disconnect(); }
Client_dataReceived(str);
Read();
}
当我将此客户端连接到服务器时,它会挂起。当我用 Intellisense 打破它时,“string str = r.ReadLine();” 突出显示,我认为这是程序在开始挂起之前正在处理的内容。为什么会这样挂?我以前以完全相同的方式创建了应用程序,它们不会挂起。
提前致谢!
编辑:我刚试过这个:
private void Read()
{
StreamReader r = new StreamReader(clientObject.GetStream());
string str;
while ((str = r.ReadLine()) != null)
{
Client_dataReceived(str);
}
}
但我得到了同样的效果......