【发布时间】:2012-12-06 16:44:20
【问题描述】:
我正在尝试实现一个 tcp 客户端监听功能。这意味着在与服务器建立连接后,这个 tcp 客户端只是坐在那里等待新数据的到达。 这是我的代码,但是当它运行时,它抱怨无法从 网络流。但是服务器还没有开始发送数据。我想抱怨是因为 tcp 客户端的超时时间。
这是正确的做法吗?
public void listen(dataHandler processDataFuc)
{
NetworkStream stream;
Byte[] data_buffer = new Byte[MAX_PACKET_SIZE];
if(!this.Connected)
{
this.Connect();
}
while (!this.terminate_listening)
{
stream = main_client.GetStream();
while (stream.Read(data_buffer, 0, data_buffer.Length) > 0)
{
processDataFuc(data_buffer);
}
}
}
谢谢
【问题讨论】: