Re[5]: [Этюд] - синхронный vs асинхронный
От: Serginio1 СССР https://habrahabr.ru/users/serginio1/topics/
Дата: 29.09.21 10:27
Оценка:
Здравствуйте, Shmj, Вы писали:

S>Попробуйте убрать LongRunning — без него и первый вариант начнет тормозить.


То есть такой код тоже тормозит?

static async Task Main(string[] args)
        {
            for (int i = 0; i < 1000; i++)
            {
                int iCopy = i;

              await AsyncMethod(iCopy);

            }
            Console.ReadKey();
        }

Тогда у тебя будет ожидаться одна задача, то есть задачи выполняются последовательно
По сути то ты хочешь выполнить все задачи без ожидания выполнения других. Убери await


static async Task Main(string[] args)
        {
   Task[] tasks=new Task[1000];
            for (int i = 0; i < 1000; i++)
            {
                int iCopy = i;

              tasks[i]=AsyncMethod(iCopy);

            }
 await Task.WhenAll(tasks);
            Console.ReadKey();
        }
и солнце б утром не вставало, когда бы не было меня
Отредактировано 29.09.2021 10:38 Serginio1 . Предыдущая версия . Еще …
Отредактировано 29.09.2021 10:33 Serginio1 . Предыдущая версия .
Отредактировано 29.09.2021 10:32 Serginio1 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.