gpt4 book ai didi

.net - 我可以重用 HttpWebRequest 吗?

转载 作者:行者123 更新时间:2023-12-03 11:57:15 26 4
gpt4 key购买 nike

我可以重用 HttpWebRequest 吗?

似乎对站点的第三个请求导致操作超时。似乎每个请求都会创建一个新连接,所以我想知道是否可以通过更改 url 并再次获取请求来重用 HttpWebRequest。有问题的代码如下。此代码检查是否存在一系列 url。

    static void storeList(TextWriter sw, string urlTemplate, int start, int end)
{
for (int i = start; i < end; i++)
{
var url = string.Format(urlTemplate, i);
var req = (HttpWebRequest)HttpWebRequest.Create(url);
{
req.Method = "HEAD";
tryHttpWebRequest
{
var resp = req.GetResponse();
sw.WriteLine(i);
}
catch (Exception e)
{
}
}
}
sw.Flush();
}

最佳答案

如果您只是在回复中调用 Close,您应该没问题。你只被允许这么多“打开”的连接,所以它失败的原因是因为它不能打开一个新的连接。

完成响应后,您需要关闭它......无需重用任何东西。

来自 MSDN article :

You must call either the Stream.Close or the HttpWebResponse.Close method to close the response and release the connection for reuse. It is not necessary to call both Stream.Close and HttpWebResponse.Close, but doing so does not cause an error.

关于.net - 我可以重用 HttpWebRequest 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2179626/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com