Сообщение Re[3]: [Этюд] - синхронный vs асинхронный от 30.09.2021 15:01
Изменено 30.09.2021 15:02 Shmj
Re[3]: [Этюд] - синхронный vs асинхронный
Здравствуйте, Serginio1, Вы писали:
S>А использовать он хочет его в асинхронном коде. И говорит, что есть простое решение.
S>А завертывание долгого синхронного кода
S>
S>Не красиво
Ага. Представьте 5 вызовов в методе (чередуются с синхронным) и 5 ваших гармошек с Task.Factory.StartNew...
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>Не красиво
Ага. Представьте 5 вызовов в методе (чередуются с синхронным) и 5 ваших гармошек с Task.Factory.StartNew...
На каждый вызов вы создаете по отдельному потому. А в синхронной версии всего 1 поток на метод. Тут не просто не красиво — тут еще и не оптимально.
S>А использовать он хочет его в асинхронном коде. И говорит, что есть простое решение.
S>А завертывание долгого синхронного кода
S>
S> await Task.Factory.StartNew(() =>
S> {
S> Thread.Sleep(1000);
S> }, TaskCreationOptions.LongRunning);
S>
S>Не красиво
Ага. Представьте 5 вызовов в методе (чередуются с синхронным) и 5 ваших гармошек с Task.Factory.StartNew...
На каждый вызов вы создаете по отдельному потому. А в синхронной версии всего 1 поток на метод. Тут не просто не красиво — тут еще и не оптимально.