HttpWebRequest,取消请求的已知问题

本文关键字:问题 请求 取消 HttpWebRequest | 更新日期: 2023-09-27 17:47:49

取消HttpWebRequest HTTP请求是否存在已知问题?我们发现,当我们取消4-5个请求时,下一个请求将无限期挂起。

如果没有已知的问题,那么我可能做错了什么。。。哪里有一个好的资源示例来展示它是如何工作的(一个完整的解决方案,而不是几个代码片段)?

如果存在已知的问题,我可以做些什么来解决这些问题,以便有效地取消尽可能多的请求?

HttpWebRequest,取消请求的已知问题

取消请求后,请注意关闭响应流,否则会发生泄漏。

我通常在从web请求获得响应时使用"使用"来确保响应关闭:

WebRequest request = WebRequest.Create("http://google.com");
using (WebResponse response = request.GetResponse())
{
   //do my job
}

这样,即使您取消了请求,或者它在读取响应时抛出异常,resposne及其流也将关闭。