1

我有这样的功能:

static void doAction(string link){
  Uri myUri = new Uri(link);
  HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(ur) ;
  request.GetResponse();
 }

调用此函数 2-3 次后,无论链接的值如何,它总是返回 WebException(请求超时已过期)。

怎么了?

4

1 回答 1

5

您没有处理响应 - 这意味着如果多个 URL 转到同一主机,您最终将阻塞连接池,直到这些响应被垃圾收集。

最简单的解决方法就是使用一个using语句:

using (request.GetResponse())
{
    // No-op
}
于 2013-07-16T17:58:30.740 回答