閱讀176 返回首頁    go 小米 go 小米5


HttpWebRequest的GetRespons偶爾超時、死掉的原因及解決辦法

        在做一個接口的時候,部分需求時根據用戶指定的Url,通過Post方式來發送數據,之前的多次調試,一直都是可以正常發送數據獲取返回值,但是後來幾次的調試,在沒有改變代碼的前提下,結果GetResponse卻始終會超時死掉。

經過上網百度一共找出了下麵幾種原因與對應的解決辦法:
1、修改
DefaultConnectionLimit 為更大的值係統默認為2

System.Net.ServicePointManager.DefaultConnectionLimit = 50;
2、在HttpWebRequest req = (HttpWebRequest)WebRequest.Create(v_strURL)前麵添加一句垃圾回收

System.GC.Collect();

3、每次使用完HttpWebRequest去關閉對應的http connection
req.Close();
req=null;
最好對應的HttpWebResponse也要close:
rep.Close();
rep = null;

詳細代碼案例:點擊打開鏈接

更加詳細的延時分析:點擊打開鏈接

最後更新:2017-04-03 20:19:17

  上一篇:go SQL SERVER中Case的使用方法
  下一篇:go word中插入題注(表1、圖1)