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

Сообщение Re[7]: Зачем нам асинхронность? от 08.08.2020 15:21

Изменено 08.08.2020 17:28 Serginio1

Re[7]: Зачем нам асинхронность?
Здравствуйте, alex_public, Вы писали:

_>Здравствуйте, Serginio1, Вы писали:


S>>_

_>>>А вот для случая привнесения "пользовательской асинхронности" (т.е. когда грубо говоря задача на закачку файла не блокирует весь UI до её исполнения) как раз правильнее использовать классический запуск фонового потока.
S>>И чем это лучше?
S>>Вместо awaite File.ReadAllTextAsync нужно создавать бэкграунд поток, передавать в него метод в котором вызывать в итоге File.ReadAllText

_>Потому что для однопользовательского случая такая задача масштабируется гораздо лучше.

И чем это лучше? Ты запускаешь отдельный поток. Который нихрена не делает, только ожидает когда данные считаются. При этом морозит потоки (главный и вспомогательный) через объекты синхронизации. При получении данных передает данные в основной поток.
При awaite File.ReadAllTextAsync данные передаются сразу в главный поток или если использовать .ConfigureAwaite(false) в любой поток.
Чем это маштабируется то лучше?
https://stackoverflow.com/questions/47741546/is-an-iocp-a-thread-that-is-running-while-the-i-o-is-taking-place-or-after
Re[7]: Зачем нам асинхронность?
Здравствуйте, alex_public, Вы писали:

_>Здравствуйте, Serginio1, Вы писали:


S>>_

_>>>А вот для случая привнесения "пользовательской асинхронности" (т.е. когда грубо говоря задача на закачку файла не блокирует весь UI до её исполнения) как раз правильнее использовать классический запуск фонового потока.
S>>И чем это лучше?
S>>Вместо awaite File.ReadAllTextAsync нужно создавать бэкграунд поток, передавать в него метод в котором вызывать в итоге File.ReadAllText

_>Потому что для однопользовательского случая такая задача масштабируется гораздо лучше.

И чем это лучше? Ты запускаешь отдельный поток. Который нихрена не делает, только ожидает когда данные считаются. При этом морозит вспомогательный поток через объекты синхронизации до получения данных. При получении данных передает данные в основной поток.
При awaite File.ReadAllTextAsync данные передаются сразу в главный поток или если использовать .ConfigureAwaite(false) в любой поток.
Чем это маштабируется то лучше?
https://stackoverflow.com/questions/47741546/is-an-iocp-a-thread-that-is-running-while-the-i-o-is-taking-place-or-after