TaskCanceledException с помощью ContinueWithC#

Место общения программистов C#
Ответить
Anonymous
 TaskCanceledException с помощью ContinueWith

Сообщение Anonymous »

Я пытался понять, почему я получаю исключение TaskCanceledException для небольшого количества асинхронного кода, который недавно начал работать неправильно. Я свел проблему к небольшому фрагменту кода, который заставляет меня ломать голову:

Код: Выделить всё

static void Main(string[] args)
{
RunTest();
}

private static void RunTest()
{
Task.Delay(1000).ContinueWith(t => Console.WriteLine("{0}", t.Exception), TaskContinuationOptions.OnlyOnFaulted).Wait();
}
Насколько мне известно, это должно просто приостановиться на секунду, а затем закрыться. ContinueWith не будет вызываться (это относится только к моему реальному варианту использования). Однако вместо этого я получаю исключение TaskCanceledException и понятия не имею, откуда оно взялось!

Подробнее здесь: https://stackoverflow.com/questions/286 ... ntinuewith
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»