【发布时间】:2012-11-22 19:24:35
【问题描述】:
.NET 3.5 和 4.0 之间的 HttpWebRequest.Timeout 属性行为是否发生了变化?文档似乎暗示了这一点:
超时是后续同步的毫秒数 使用 GetResponse 方法发出的请求等待响应,然后 GetRequestStream 方法等待一个流。如果资源不 在超时期限内返回,请求抛出 WebException 将 Status 属性设置为 WebExceptionStatus.Timeout。
.NET 4.0 doc在中间加上这句话:
超时适用于整个请求和响应,而不是 分别用于 GetRequestStream 和 GetResponse 方法调用。
这似乎是一个相当大的变化。 “整个请求和响应”可能意味着发送请求和接收响应所花费的全部时间。这似乎与前一句相矛盾,因为等待响应流准备好可能很快——基本上只是服务器检索/准备响应的时间——但是接收到 整个 响应流可能需要很长时间。
有没有人比较过 3.5 和 4.0 之间的这种行为?
【问题讨论】:
标签: .net .net-4.0 httpwebrequest