http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 8966|回复: 2

[HttpHelper] System.Net.HttpWebRequest请求超时的问题解决方法

[复制链接]
发表于 2015-7-14 16:38:34 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 speed2018 于 2015-7-14 16:40 编辑

【转】System.Net.HttpWebRequest请求超时的问题解决方法




在网络上搜索了一些WinForm环境下进行Web请求(Request)的方法,简单的应用并没有发现什么问题。

但是我需要使用多线程对不同的的Url进行请求,以获得Web数据。

实践发现每次请求完两个页面url后都会出现超时的问题。

网上搜索了一下,开始是说把HttpWebRequest的请求对象的ServicePoint.ConnectionLimit(同时请求的数量,默认为2)设置的高一点。

设置高了以后超时的问题的确就没出现了。

本以为程序好用了,可以长时间应用后又出现了超时问题,很明白又达到同时请求的上限。

看来HttpWebRequest请求对象不会自行销毁(当初网上给代码的人也没写上销毁方法)最后把程序中的每一个应用到Request请求对象和Response的响应对象调用其销毁方法,关闭连接,当然当初的请求对象的ServicePoint.ConnectionLimit属性也不需要设置的那么高了。

request.Abort();//销毁关闭连接
response.Close();//销毁关闭响应


请问站长,httphelper里应该如何处理这个问题??????????????????
另外Timeout设置时间的作用是超过指定的时间就停止响应吗??






1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2015-7-15 13:07:55 | 显示全部楼层
Timeout有时候会受服务端影响,原理是上达到就停止

Httphelper不存在这个问题,已经优化过了,只要你的电脑配置够,发多少都可以
回复

使用道具 举报

 楼主| 发表于 2015-7-15 13:20:26 | 显示全部楼层
知道了,谢谢站长
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-4-28 15:39

© 2014-2021

快速回复 返回顶部 返回列表