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

Сообщение Re[3]: [Этюд] - синхронный vs асинхронный от 30.09.2021 15:01

Изменено 30.09.2021 15:02 Shmj

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

S>А использовать он хочет его в асинхронном коде. И говорит, что есть простое решение.

S>А завертывание долгого синхронного кода

S>
S> await Task.Factory.StartNew(() =>
S>            {
S>                Thread.Sleep(1000);
S>            }, TaskCreationOptions.LongRunning);
S>


S>Не красиво


Ага. Представьте 5 вызовов в методе (чередуются с синхронным) и 5 ваших гармошек с Task.Factory.StartNew...
Re[3]: [Этюд] - синхронный vs асинхронный
Здравствуйте, Serginio1, Вы писали:

S>А использовать он хочет его в асинхронном коде. И говорит, что есть простое решение.

S>А завертывание долгого синхронного кода

S>
S> await Task.Factory.StartNew(() =>
S>            {
S>                Thread.Sleep(1000);
S>            }, TaskCreationOptions.LongRunning);
S>


S>Не красиво


Ага. Представьте 5 вызовов в методе (чередуются с синхронным) и 5 ваших гармошек с Task.Factory.StartNew...

На каждый вызов вы создаете по отдельному потому. А в синхронной версии всего 1 поток на метод. Тут не просто не красиво — тут еще и не оптимально.