Страницы

Поиск по вопросам

суббота, 7 марта 2020 г.

Как положить лямбду в List<Task>

#c_sharp


Есть список задач List. 

Не могу разобраться как правильно положить в него лямбду. 
Таким образом как у меня сейчас отрабатывает неправильно и на консоль выводится только
"one";

Почему вторая таска не отрабатывает?

static void Main()
{
    var tasks = new List();
    tasks.Add(TestMethod("one"));
    tasks.Add(new Task(async () => await TestMethod("two")));
    Task.WhenAll(tasks);

    Console.ReadKey();
}

private static async Task TestMethod(string msg)
{
    Console.WriteLine(msg);
}

    


Ответы

Ответ 1



Все верно. Вы же её создали, но не запустили. Чтобы вторая отработала - запускайте ее с помощью Task.Run(): tasks.Add(Task.Run(async () => await TestMethod("two"))); Тестить!

Комментариев нет:

Отправить комментарий