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

Сообщение Re[20]: Вдогонку. от 20.08.2020 7:06

Изменено 20.08.2020 7:30 Serginio1

Re[20]: Вдогонку.
Здравствуйте, alex_public, Вы писали:


_>Бррр, повторяю в последний раз. Вся разница между синхронным и асинхронным вводом-выводом в том, что в первом случае поток ждёт завершения одной конкретной операции ввода-вывода, а во втором случае он ждёт завершения любой операции ввода-вывода данного приложения. Соответственно в том случае, если у тебя в каждый момент времени исполняется только одна такая операция, разницы между этими подходами не будет никакой (ну не считая накладных расходов на исполнение дополнительного кода по организации очереди в асинхронном варианте).


А если их выполняются тысячи на серверах?
Re[20]: Вдогонку.
Здравствуйте, alex_public, Вы писали:


_>Бррр, повторяю в последний раз. Вся разница между синхронным и асинхронным вводом-выводом в том, что в первом случае поток ждёт завершения одной конкретной операции ввода-вывода, а во втором случае он ждёт завершения любой операции ввода-вывода данного приложения. Соответственно в том случае, если у тебя в каждый момент времени исполняется только одна такая операция, разницы между этими подходами не будет никакой (ну не считая накладных расходов на исполнение дополнительного кода по организации очереди в асинхронном варианте).


А если их выполняются тысячи на серверах?
Все таки асинхронность нужна прежде всего для серверов.
Для десктопа и мобильных приложений это прежде всего кроссплатформенность.
Xamarin.Forms (разные контексты синхронизации итд)
Ну и удобства. По сути Task это и есть замена потока. То есть с использованием асинхронности мы забываем, что такое поток, Sleep, WhiteOne (Delay, WhiteOneAsync)