Async ConfigureAwait (false) Обработка исключений — длительные процессы

У меня есть два длинных процесса внутри блока Task.Run, которые я хочу запускать одновременно и перехватывать любые исключения, которые могут возникнуть. Я не хочу ждать завершения этих задач и хочу избежать взаимоблокировок, поэтому я добавил ConfigureAwait(false). Мой первый вопрос: как мне выполнить оба метода без ожидания и обработать исключение для любого из них? В настоящее время мой код выглядит так:

Task.Run(async () =>
        {
            try
            {
                EmailTicket();
                PostETicket();
            }
            catch(Exception ex)
            {

            }

        }).ConfigureAwait(false);

Если я поставлю await перед EmailTicket() и PostETicket(), тогда только метод поймает исключение, и процесс завершится. Если я не дождусь процесса, описанного выше, возникнут ли у меня какие-либо проблемы?


person GH DevOps    schedule 23.07.2020    source источник
comment
Нет смысла настраивать ожидание, если вы никогда его не ждете. Вы настраиваете что-то, чего не делаете, поэтому ничего не получается. Также нет смысла делать лямбда-асинхронность, если вы не собираетесь ничего ждать.   -  person Servy    schedule 23.07.2020
comment
@Servy, так что, пока я не жду, я не попаду в тупики?   -  person GH DevOps    schedule 23.07.2020
comment
Есть много способов написать код, который блокируется без использования await. Все, что я сказал, это то, что настройка await бессмысленна, если вы не ожидаете возвращаемого значения.   -  person Servy    schedule 23.07.2020
comment
Вы хотите, чтобы PostETicket выполнялся после завершения EmailTicket, или они оба должны выполняться одновременно?   -  person Theodor Zoulias    schedule 23.07.2020
comment
Оба запускаться одновременно без ожидания   -  person GH DevOps    schedule 23.07.2020