社区
C#
帖子详情
有关TCP设置ReadTimeout的问题
Gao2003
2006-08-30 05:31:05
当我设置了ReadTimeout后,用Read去读数据,如果碰到超时情况时(触发IOException)后。下次再去读时,不管有没有数据,没有延时,就超时(触发IOException),不知道什么原因,我用的是VS2005。
...全文
1244
8
打赏
收藏
有关TCP设置ReadTimeout的问题
当我设置了ReadTimeout后,用Read去读数据,如果碰到超时情况时(触发IOException)后。下次再去读时,不管有没有数据,没有延时,就超时(触发IOException),不知道什么原因,我用的是VS2005。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Gao2003
2006-08-31
打赏
举报
回复
终于解决了,这样处理就可以了
public byte[] Receive()
{
byte[] data=null;
if (tcp.Client.Poll(3000000, SelectMode.SelectRead))
{
if (tcp.Available > 0)
{
data = new byte[tcp.Available];
tcp.GetStream().Read(data, 0, data.Length);
}
else
data = null;
}
else//read timeout
{
data = null;
}
return data;
}
原来以为在LINUX和C下才用select和Poll,原来.net下也有。那个ReadTimeout浪费我半天时间.
kokokokokoko
2006-08-31
打赏
举报
回复
我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂
我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂
我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂
我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂
我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂
我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂我頂
Gao2003
2006-08-31
打赏
举报
回复
高手!!高手????
Gao2003
2006-08-30
打赏
举报
回复
是不是在Read Timeout后要设置什么啊,如果在Timeout一次后,一直调用Receive则每隔一段时间就会触发IOException
Gao2003
2006-08-30
打赏
举报
回复
大家可以试一下面的代码:
public byte[] Receive()
{
byte[] data=null;
try
{
data = new byte[500];
int count=ns.Read(data, 0, data.Length);
byte[] read_data = new byte[count];
Array.Copy(data, read_data, count);
return read_data;
}
catch (IOException err)//read timeout
{
return null;
}
}
其构造函数中
ns = tcp.GetStream();
ns.ReadTimeout = 3000;
当出现一次超时时,下次再调用Receive()时,不管有没有数据都出触发IOException,难到是BUG吗????请高手指条道,谢谢
lxhvc
2006-08-30
打赏
举报
回复
此属性返回通过在基础流上调用 ReadTimeout 属性而返回的值。设置此属性时,将基础流上的 ReadTimeout 值设置为指定值。
如果基础流为 NetworkStream,则默认情况下 ReadTimeout 以毫秒为单位并且被设置为 Infinite,这样读操作就不会超时
wangwei155
2006-08-30
打赏
举报
回复
JF
socket
timeout
详解(connect 、
read
、write
timeout
)
timeout
又可以细分为 connect
timeout
、
read
timeout
、write
timeout
怎样修改linux操作系统的
tcp
connect
timeout
linux上
TCP
connection
timeout
问题
解决办法
主要介绍了 linux上
TCP
connection
timeout
问题
解决办法的相关资料,需要的朋友可以参考下
cms-cloud后台管理系统
常见
问题
如果使用Mac 需要修改application.yml文件路径profile 如果使用Linux 提示表不存在,
设置
大小写敏感配置在/etc/my.cnf 添加lower_case_table_names=1,重启MYSQL服务 如果提示当前权限不足,无法写入文件...
【网络协议】聊聊网络
Read
Timeout
和Connect
Timeout
聊聊网络
Read
Timeout
和Connect
Timeout
C# Stream.
Read
Timeout
解决方案
C# Stream.
Read
Timeout
解决方案
C#
110,535
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章