Информация об изменениях

Сообщение Re[9]: [Этюд] - синхронный vs асинхронный от 29.09.2021 10:58

Изменено 29.09.2021 11:04 Serginio1

Re[9]: [Этюд] - синхронный vs асинхронный
Здравствуйте, Shmj, Вы писали:

S>Так же из этого же метода приходится вызывать синхронные.


S>Что же делать?


S>> Ты внутри задачи которая лонг вызываешь асинхронный код который внутри в итоге и вызывает Thread.Sleep(1000)


S>Предлагайте решение.

Тут и так понятно если ты вызваешь долгий синхронный код, то и работай с ним синхронно.
Асинхронный код не поможет, а только засрет пул потоков
Re[9]: [Этюд] - синхронный vs асинхронный
Здравствуйте, Shmj, Вы писали:

S>Так же из этого же метода приходится вызывать синхронные.


S>Что же делать?


S>> Ты внутри задачи которая лонг вызываешь асинхронный код который внутри в итоге и вызывает Thread.Sleep(1000)


S>Предлагайте решение.

Тут и так понятно если ты вызваешь долгий синхронный код, то и работай с ним синхронно.
Асинхронный код не поможет, а только засрет пул потоков. Или выделяй отдельно долгий синхронный метод в Task c LongRunning

В данном случае
 awaite Task.Factory.StartNew(() =>
                {
                   Thread.Sleep(1000);
                }, TaskCreationOptions.LongRunning);