C#怎么设置FOR循环的超时时间?FOR循环访问一个列表中所有的网页,但有时会因为网络原因导致假死.

请问,在FOR循环中加入哪个代码可以实现这个循环只会执行多少秒,而如果超过多少秒就开始循环下一条intcount=0;for(inti=0;i<shuliang;i++)... 请问,在FOR循环中加入哪个代码可以实现这个循环只会执行多少秒,而如果超过多少秒就开始循环下一条
int count =0;
for (int i = 0; i < shuliang; i++)
{
....

string str = response.getbodystr();

if(...)

{
...
}

else

{
...

}
}

具体加在哪里,如何改,请帮忙,详细一些,刚接触C#,希望各位师兄师姐帮忙.
展开
 我来答
科学发簪观
2013-05-03 · TA获得超过1342个赞
知道小有建树答主
回答量:896
采纳率:0%
帮助的人:660万
展开全部
你是用webrequest来访问网络的吧。设置 webrequest 的 Timeout 属性调整超时时间就行了。注意,超时会引发WebException,记得捕获,捕获后continue;就行了。
更多追问追答
追问
不是用webrequest访问,,我只是想设置这个循环最多运行的时间,,这样不管它到底运行到哪里了,都重新运行下一条,,,
追答
那你总是要访问网络的对吧?用的是什么组件来访问网页?webclient?这类东西都是有超时机制的,不可能无限让你等下去。其他操作相对网络操作都是瞬间的,所以实际上只要设置这个超时值就可以。实在不行,你要新开一个线程来计时,做起来就麻烦了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
seo0763_com
2013-05-03 · TA获得超过128个赞
知道小有建树答主
回答量:176
采纳率:0%
帮助的人:162万
展开全部
你这个问题,跳出for循环也解决不了你的效率和卡的问题,因为这样写法实在太没效率了。
这种操作过程中要长期等待资源响应的建议使用异步,当然也可以考虑多线程,但是多线程不如异步好控制,也容易造成假死,并不是线程越多就越快。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式