Я работаю в простом коде тайм-аута для моих запросов http. Я получил это
private async Task<HttpResponseMessage> ExecuteIOTask(Task<HttpResponseMessage> ioTask, int timeout)
{
var timeoutTask = await Task.WhenAny(Task.Delay(timeout), ioTask);
if (ioTask.IsCompleted)
return ioTask.Result;
throw new TimeoutException();
}
После IsCompleted, есть ли разница с использованием Result
против await
? В этом случае задача уже выполнена, поэтому я думаю, что производительность должна быть такой же. Но я немного беспокоюсь об обработке исключений. Я думаю, что Result
не будет распространять исключения, но await
будет.
Это правильно?