Получи случайную криптовалюту за регистрацию!

В python 3.11 в модуль asyncio завезли TaskGroup: https://bit. | DevBrain

В python 3.11 в модуль asyncio завезли TaskGroup: https://bit.ly/3sNbVVe

Если кратно, то это замена для функции gather, которая запускает сразу несколько корутин. Стандартная функция gather непредсказуема и нужно помнить, что при отмене одной корутины из списка, другие не будут автоматически отменены. Мне приходилось дополнительно писать обёртку, которая обрабатывала возможные ошибки от асинхронных функций и делала явную отмену gather.

С приходом TaskGroup появляется некая атомарность у группы корутин, и соответственно более удобная и наглядная обработка ошибок.

Код взят из исходников EdgeDB: https://github.com/edgedb/edgedb/blob/master/edb/common/taskgroup.py