дольше секунды?
var delayTask = Task.Delay(TimeSpan.FromSeconds(1)); var workTask = SomeTask(); var completedTask = await Task.WhenAny(delayTask, workTask); if (completedTask == delayTask) { // SomeTask выполняется дольше одной секунды. Запустите другой таск или выполните какое-либо действие. AnotherTask(); // Например, запуск другого таска } else { // SomeTask завершился раньше, чем через одну секунду. }
WhenAny в любом случае выполнит workTask?
Нет, только одно из них которое раньше выполнится
Это плохо. SomeTask должен выполниться
тут ChatGPT ответил?)
SomeTask потом должен продолжить выполнение, WhenAny его не прерывает
Ладно, не так понял вопрос. WhenAny создаст таску которая запустит другие таски и завершится тогда когда завершится какая-то из них
Все таки ты не прав, CallAPI не происходит
У тебя программа прерывается после выполнения Console.WriteLine в else. Добавь после него ожидание
WhenAny ничего не выполняет, оно ждет завершения
Понял, я просто боялся что он прерывает все таски кроме первого
У тебя программа завершилась
Обсуждают сегодня