0

我有一个我提出请求的第三方 Web 服务。如果请求花费的时间超过 6 秒,我会放弃结果。

我想做的是进行服务调用,如果需要超过 6 秒的超时并返回,但是当服务调用实际返回结果或底层连接超时时,我想记录调用的时间会采取。

动机是我目前在 6 秒时超时,并且我知道有一定比例的呼叫超时。我想要的是一些关于通话通常需要多长时间的数据,即使是过去 6 秒的通话。可能是如果我将超时时间增加到 7 秒,那么我的超时时间会少得多,但如果没有我不知道的数据。

我在 C# 中工作,有什么我可以做的,Task<T>或者我必须构建一些更定制的东西吗?

4

1 回答 1

1

一种选择是:

  • 一、ContinueWith关于任务做日志
  • 然后,使用 Task.WhenAny(task, Task.Delay) 超时
于 2012-11-02T12:29:04.717 回答