C# 发送HTTP请求超时解决办法

request.GetResponse();超时问题的解决,和HttpWebRequest多线程性能问题,请求超时的错误,

解决办法

1.将http的request的keepAlive设置为false  //如果不是必须的要keepalive的,那么就要设置KeepAlive为false:

2.修改System.Net.ServicePointManager.DefaultConnectionLimit = 50; //这个值默认是2,根据自己的情况修改

3.释放资源(比如HttpWebReques对象和HttpWebResponse对象)

if (resp != null)
{
    resp.Close();
}
if (req != null)
{
    req.Abort();
}

4.在创建HttpWebReques对象之前,强制回收垃圾

System.GC.Collect();

5.Http的GET请求时,不要手动设置ContentLength的值

POST方法中,的确是要手动填充数据和算出数据大小,然后手动给ContentLength赋值的。

上一篇:abstract 抽象


下一篇:信号量