System.Net.WebException: The operation has timed out at System.Net.HttpWebRequest.GetResponse()
生活随笔
收集整理的這篇文章主要介紹了
System.Net.WebException: The operation has timed out at System.Net.HttpWebRequest.GetResponse()
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
System.Net.WebException: The operation has timed out? at System.Net.HttpWebRequest.GetResponse()
在請求獲取響應結果的時候,超時,具體原因可能就是如下面Jon Skeet所說,
WebResponse implements IDisposable,so you should use a using statement for it (and for the StreamReader you create from the stream).
If you leave a WebResponse open, it will take up a connection from the connection pool to that host,
and you can end up with timeouts this way.
WebResponse繼承IDisposable接口,會釋放非托管資源
所以你需要使用聲明來創建資源對象
如果你打開WebResponse資源響應,那么他將通過連接池連接主機,使用這個方式,超時將不會成為問題。
應該是這么翻譯吧╮(╯_╰)╭
This will close the stream and the response even if an exception is thrown,
so you'll always clean up the resources (in this case releasing the connection back to the pool) promptly. 這個將會關閉stream和response,即使出現拋出異常的情況
所以你總能夠即時清理好資源(釋放應用池的連接)
這個方式,嘗試了一下,暫時沒出現什么問題,算解決了99%吧,等到以后再出現什么問題,再來看。
下面是網上找到的一個解決方案:
http://stackoverflow.com/questions/15493321/system-net-webexception-the-operation-has-timed-out-on-httpwebresponse
Author:Jon Skeet
System.Net.WebException: The operation has timed out on HttpWebResponse
This may well be the problem:HttpWebResponse myResp = (HttpWebResponse)myReq.GetResponse();WebResponse implements IDisposable, so you should use a using statement for it (and for the StreamReader you create from the stream). If you leave a WebResponse open, it will take up a connection from the connection pool to that host, and you can end up with timeouts this way. The fixed code would look like this:string responseString; using (var response = myReq.GetResponse()) {using (var reader = new StreamReader(response.GetResponseStream()){responseString = reader.ReadToEnd();} }This will close the stream and the response even if an exception is thrown, so you'll always clean up the resources (in this case releasing the connection back to the pool) promptly.?
總結
以上是生活随笔為你收集整理的System.Net.WebException: The operation has timed out at System.Net.HttpWebRequest.GetResponse()的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android提权漏洞CVE-2014-
- 下一篇: All Things OpenTSDB