Socket接受数据的问题
要实现在接受数据超时后, 自动进行下一次接收尝试. 我在下面程序中尝试设置
client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveTimeout, 2000);
或者client.ReceiveTimeout = 2000;
但是结果都不正确. 超时后, 连接就被关闭了.
请大家指点.
client.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveTimeout, 2000);
client.ReceiveTimeout = 2000;
while(true)
{
data = new byte[1024];
recv = client.Receive(data);
if (recv == 0)
break;
Console.WriteLine(Encoding.ASCII.GetString(data, 0, recv));
client.Send(data, recv, SocketFlags.None);
}