C# 操作 Response影响超时,如何避免?

Response影响超时try{for(inti=0;i<5;i++){WebRequestrq=WebRequest.Create("http://www.adc.co... Response影响超时 try {
for (int i = 0; i < 5; i++) {
WebRequest rq = WebRequest.Create("http://www.adc.com/aaa/it/Lili.jpg");
WebResponse rp = rq.GetResponse();
rp.Close();
rq.Abort(); }
}
catch{ }

将上面的方法放到Threading 进程中
GetResponse()这里[有时]会出现“超时”从而进入catch中,如何去避免,其实这个URL是存在的,如何操作,可以不让其超时,这个URL是存在的啊.....
展开
 我来答
ourcolour
2011-12-17 · TA获得超过510个赞
知道小有建树答主
回答量:376
采纳率:0%
帮助的人:255万
展开全部
rp.TimeOut = 3000; //设置超时时间为 3 秒...
更多追问追答
追问
超时 设置了也不管用的
追答
你试试看这样去处理,尝试连接3次,如果3次都超时,那就放弃。
我做的一些手机网络游戏的服务器列表就是用Http Get抓页面取得的,有时候会有取不到的时候,就用这个方法,效果还不错。

///
/// 单个获取过程
///
public void SingleRequest(string url)
{
bool isFailed = false;
int failedTimes = 3;
WebRequest rq;
WebResponse rp;

for(int i=0; i<failedTimes; i++)
{
try
{
rq = WebRequest.Create(url);
rp = rq.GetResponse();
}
catch(TimeoutException)
{
isFailed = true;
}

//关闭Req, Res,代码省略
//…

if(!isFailed) break;
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式