Size: a a a

2021 January 28

NT

Nikita Tsukanov in pro.net
Anton
Я не про ожидания имел ввиду, а про способ обработки ошибок, плохо будет если упадет вызывающий поток этот кусок async void'а
конешн плохо
источник

AT

Alexey Tkachenko in pro.net
βλαδιμιρ 🎀 🌎🔫
нет, это я понимаю, но ведь наверняка есть кейсы где вызывающий ивента хочет дождаться завершения всех хендлеров
тогда вырази такой вызов языковыми средствами, какая проблема?
источник

NT

Nikita Tsukanov in pro.net
ток если бы там был void без async и он тоже упал
источник

NT

Nikita Tsukanov in pro.net
то ситуация была бы ровно той же самой
источник

NT

Nikita Tsukanov in pro.net
гуй не знает что делать с твоим эксепшоном
источник

NT

Nikita Tsukanov in pro.net
он может вместе с ним только упасть
источник

NT

Nikita Tsukanov in pro.net
вообще исключения пролезающие через границы между пользовательским кодом и библиотеками - это всегда грустно
источник

NT

Nikita Tsukanov in pro.net
т. к. библиотека не знает что делать с твоим исключением
источник

NT

Nikita Tsukanov in pro.net
и ей остаётся только упасть
источник

A

Anton in pro.net
Ну синхронные методы еще как то выше можно обернуть в общую систему обработки ошибок, с async void придется уже в самом колбеке подворачивать
источник

NT

Nikita Tsukanov in pro.net
выше - это где?
источник

NT

Nikita Tsukanov in pro.net
в static void Main()?
источник

NT

Nikita Tsukanov in pro.net
прямо над эвентлупом?
источник

A

Anton in pro.net
В месте где инициируем вызов события, колбека ;)
источник

NT

Nikita Tsukanov in pro.net
ещё раз, его инициирует библиотечный код по событию от ОС или от сети
источник

NT

Nikita Tsukanov in pro.net
гуй - это такой демон, который по IPC-протоколу общается с оконным сервером, если что
источник

A

Anton in pro.net
С внешними компонентами да, ничего не попишешь обычно. Я про общий случай в своем продуктовом коде, где это еще подконтрольно. Не обязательно только в гуй такое делают, в связи с бедностью апи некоторых пакетов.
источник

ДА

Дмитрий Адодин... in pro.net
В своём коде можешь asinc Task написать, кто тебе мешает?
источник

A

Anton in pro.net
Не можно а нужно, не хотел начинать холивар ;)
источник

ДА

Дмитрий Адодин... in pro.net
Если у тебя есть атомарная операция, которая сама обрабатывает свои ошибки и вызывающему коду не особенно интерсно что она там делает и когда закончит. Зачем её аwait`ить?
источник