Я хочу запускать несколько задач одновременно. Каждая задача возвращает тип значения.Поймать несколько обратных вызовов задачи через Continuewith
Может ли кто-нибудь сказать мне, как поймать все обратные вызовы через ContinueWith
?
Мой тестовый код:
static async Task<List<string>> ListAsync()
{
await Task.Delay(1000);
return new List<string>() { "Item 1", "Item 2" };
}
static async Task<int> IntAsync()
{
await Task.Delay(1000);
return 10;
}
static async Task<string> StringAsync()
{
await Task.Delay(1000);
return "My string";
}
static async Task Test()
{
Task t1 = StringAsync();
Task t2 = IntAsync();
Task t3 = ListAsync();
await Task.WhenAny(t1, t2, t3).ContinueWith(t =>
{
//how can I catch callbacks here?
});
}
Я не уверен, что именно вы пытаетесь сделать. Не хотите ли вы назвать продолжение для всех трех задач? –
@ZdeslavVojkovic Да. Я жду ответа от 3 задач. –
* Почему вы не используете 'Task.WhenAll'? И почему вы смешиваете 'ContinueWith' с' await'? –