请考虑以下事项:
public void Connect()
{
clientObject = new TcpClient();
IPEndPoint ipEnd = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 90);
centralForm.writeLog("Connecting to desired server", System.Drawing.Color.Gray, true);
clientObject.Connect(ipEnd);
if ((debug) && (clientObject.Connected)) { Debug.Print("Connected"); }
Send("0");
clientObject.GetStream().BeginRead(new byte[] { 0 }, 0, 0, Read, null);
}
我在这段代码的最后一行收到了上述错误。我做错了什么?我打电话给Connect()......我多年来一直盯着这个,我真的不知道我做错了什么。
发送代码:
public void Send(string data)
{
using (StreamWriter w = new StreamWriter(clientObject.GetStream()))
{
w.WriteLine(data);
w.Flush();
}
}
答案 0 :(得分:2)
当处置StreamWriter
时(在using
块的末尾),使用的流也会关闭。
在Send(
)方法之后,您尝试使用已关闭的流,从而产生所描述的异常。