Las*_*sen 5 .net c# dotnet-httpclient windows-store-apps
从这个问题的答案:HttpClient和HttpClientHandler必须处理?,我发现最好的做法是不要处理System.Net.Http.HttpClient每个HTTP请求.特别指出:
HttpClient的标准用法是不要在每次请求后处理它.
这没关系.
我的问题是,这种"模式"是否也适用于此Windows.Web.Http.HttpClient?或者它应该按HTTP请求处理?我认为文档对此有点模糊.在其中一个样本中,它只是说明:
// Once your app is done using the HttpClient object call dispose to
// free up system resources (the underlying socket and memory used for the object)
httpclient.Dispose();
Run Code Online (Sandbox Code Playgroud)
我相信这可以通过两种方式阅读,因此对此有任何具体的意见.
在我看来,如果它一次只用于一个请求,那么如果您尝试将它用于多个请求,它只会抛出异常。
另外,请考虑除最早版本之外的所有 HTTP 都允许对给定 TCP 连接进行多个请求。使用相同的HttpClient对象允许框架为多个请求维护 TCP 连接。
虽然示例代码确实只执行一个请求,但请注意文档中的以下文本:
HttpClient 类实例充当发送 HTTP 请求和接收响应的会话。HttpClient 实例是适用于该实例执行的所有请求的设置的集合。此外,每个 HttpClient 实例都使用自己的连接池......
[强调我的]
对于充当“适用于该实例执行的所有请求的设置集合”的对象,显然它必须用于多个请求。
| 归档时间: |
|
| 查看次数: |
732 次 |
| 最近记录: |