HttpWebRequest,已知的取消请求问题?
-
06-07-2019 - |
题
取消HttpWebRequest HTTP请求有任何已知问题吗?我们发现当我们取消4-5个请求时,下一个请求会无限期挂起。
如果没有已知的问题,那么我可能做错了什么......哪个是一个很好的资源示例,展示了它是如何工作的(一个完整的解决方案,而不是几个代码片段)?
如果存在已知问题,我可以做些什么来解决它们,以便有效地取消我需要的任意数量的请求?
解决方案
取消请求后,请注意关闭响应流,否则会出现泄漏。
我通常使用“使用”从Web请求获取响应以确保响应已关闭时:
WebRequest request = WebRequest.Create("http://google.com");
using (WebResponse response = request.GetResponse())
{
//do my job
}
这样,即使您取消请求,或者在响应读取期间抛出异常,也会关闭resposne及其流。
不隶属于 StackOverflow