Сообщение Re[5]: Можно ли избавиться от async|await? от 13.12.2025 18:32
Изменено 13.12.2025 18:40 novitk
Re[5]: Можно ли избавиться от async|await?
Здравствуйте, mrTwister, Вы писали:
T>Только в C# и пр. есть два вида "ждать": можно ждать синхронно, а можно ждать асинхронно. Причем синхронное ожидание внешне никак не отличается от "не ждать".
Как это не отличается?! Там тип результата разный (Task<T> vs T).
T>Все максимально explicit:
T>foo() — ждем
T>go foo() — не ждем
T>
T>Все, больше вариантов нет
Речь об explicit в описание функции, а не в вызове. В обеих языках функцию из "ждем" в "не ждем" надо переписывать. Можно даже сказать, что в C# ee переписывать проще, так как каналы это лишние церемонии и в 99% случаев сингулярного результата достаточно.
T>Только в C# и пр. есть два вида "ждать": можно ждать синхронно, а можно ждать асинхронно. Причем синхронное ожидание внешне никак не отличается от "не ждать".
Как это не отличается?! Там тип результата разный (Task<T> vs T).
T>Все максимально explicit:
T>foo() — ждем
T>go foo() — не ждем
T>
T>Все, больше вариантов нет
Речь об explicit в описание функции, а не в вызове. В обеих языках функцию из "ждем" в "не ждем" надо переписывать. Можно даже сказать, что в C# ee переписывать проще, так как каналы это лишние церемонии и в 99% случаев сингулярного результата достаточно.
Re[5]: Можно ли избавиться от async|await?
Здравствуйте, mrTwister, Вы писали:
T>Только в C# и пр. есть два вида "ждать": можно ждать синхронно, а можно ждать асинхронно. Причем синхронное ожидание внешне никак не отличается от "не ждать"...., но и очень часто приводит к ошибкам, когда внутри асинхронной функции случайно вызвали сихронное ожидание.
Как это не отличается и какие нафиг ошибки?! Там тип результата разный (Task<T> vs T). Компилятор сразу по рукам.
T>Все максимально explicit:
T>foo() — ждем
T>go foo() — не ждем
T>
T>Все, больше вариантов нет
Речь об explicit в описание функции, а не в вызове. В обеих языках функцию из "ждем" в "не ждем" надо переписывать. Можно даже сказать, что в C# ee переписывать проще, так как каналы это лишние церемонии и в 99% случаев сингулярного результата достаточно.
T>Только в C# и пр. есть два вида "ждать": можно ждать синхронно, а можно ждать асинхронно. Причем синхронное ожидание внешне никак не отличается от "не ждать"...., но и очень часто приводит к ошибкам, когда внутри асинхронной функции случайно вызвали сихронное ожидание.
Как это не отличается и какие нафиг ошибки?! Там тип результата разный (Task<T> vs T). Компилятор сразу по рукам.
T>Все максимально explicit:
T>foo() — ждем
T>go foo() — не ждем
T>
T>Все, больше вариантов нет
Речь об explicit в описание функции, а не в вызове. В обеих языках функцию из "ждем" в "не ждем" надо переписывать. Можно даже сказать, что в C# ee переписывать проще, так как каналы это лишние церемонии и в 99% случаев сингулярного результата достаточно.