socket接收信息超时 我用C#做了一个客户端通信,发送数据并且需要接收数据。有时接收数据会太慢,比如返回需要1秒钟。现在如何设置,如果时间超过1秒钟就不需要这信息。下条信息来了一样能正常工作!向大家请教。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 哈哈我刚解决这个问题我知道!while(true){clientSocket.ReceiveTimeout=10000;设置接受信息,如果接受超时1秒则报异常try{ clientSocket.Receive(data, 0, bufen, SocketFlags.None);}cach{continue; //终止本次接受;}} 我测试了几次clientSocket.ReceiveTimeout=1000;设置接受信息,如果接受超时1秒则报异常 这是代表大于1秒就终止吗?不过我测试了几次都有问题。我的通信协议是这样的发送 senddata.WriteLine("entrybalance," + carbrand); senddata.Flush();接收: byte[] Data = new Byte[400]; Int32 bytes = ns.Read(Data, 0, Data.Length); string receiveData = Encoding.Default.GetString(Data, 0, bytes);我这样也可以像你的那种方法吗? 可以你是写的一个线程,线程里写个循环不停的接受?clientSocket.ReceiveTimeout=1000这代表超过1秒就报出异常你在异常里写终止这次循环他不就接受下一条了?可以的我才测试. 你把你接收的方法写进try里面就行了 写进去了,在外面要加while(true) 吗?因为我这是发一次,接收一次!刚才用了那个方法测试,clientSocket.ReceiveTimeout=1000;貌似不起作用啊 关于Ado.Net远程连接服务器的问题 如何得到一个字符串的最后2位? 关于按钮无效化 动态加载的用户控件Click事件不触发 简单的功能,但难以实现!在线等待....... richTextBox1奇怪但是应当很简单的问题 控制用户访问某些页面!~ 如何去做. 求一正则表达式 Win8Store开发中如何给文字添加下划线以及文字保存图片问题 求解! Acess 写入数据问题 .NET(C#)如何将Excel数据中的数据插入到数据库中
while(true)
{
clientSocket.ReceiveTimeout=10000;设置接受信息,如果接受超时1秒则报异常
try
{
clientSocket.Receive(data, 0, bufen, SocketFlags.None);
}cach
{
continue; //终止本次接受;
}
}
clientSocket.ReceiveTimeout=1000;设置接受信息,如果接受超时1秒则报异常
这是代表大于1秒就终止吗?不过我测试了几次都有问题。我的通信协议是这样的发送
senddata.WriteLine("entrybalance," + carbrand);
senddata.Flush();接收:
byte[] Data = new Byte[400];
Int32 bytes = ns.Read(Data, 0, Data.Length);
string receiveData = Encoding.Default.GetString(Data, 0, bytes);我这样也可以像你的那种方法吗?
clientSocket.ReceiveTimeout=1000这代表超过1秒就报出异常
你在异常里写终止这次循环他不就接受下一条了?
可以的我才测试.
因为我这是发一次,接收一次!刚才用了那个方法测试,
clientSocket.ReceiveTimeout=1000;貌似不起作用啊