Отдельно разберём TaskGroup, который пришел на замену gather в Python 3.11.
Ключевые отличия
▫️create_task() возвращает объект asyncio.Task, у которого есть соответствюущие методы управления. То есть у нас больше контроля
▫️это контекстный менеджер, который гарантирует что все таски будут остановлены по выходу из контекста
▫️ошибка автоматически отменяет незавершенные задачи,
▫️except* передает нам ExceptionGroup, в котором каждую ошибку можно обработать отдельно
import asyncio
import random
async def do_it() -> str:
if random.random() < 0.1:
raise ValueError('Oops')
delay = random.uniform(0.5, 1.5)
await asyncio.sleep(delay)
return delay
async def main():
try:
async with asyncio.TaskGroup() as tg:
for _ in range(10):
tasks.append(tg.create_task(do_it()))
for t in tasks:
print(t.result())
except *ValueError as e:
for err in e.exceptions:
print(err)
asyncio.run(main())
Рекомендую изучить страницу Coroutines and Tasks из документации, где представлено больше интересных примеров и механизмов
- таймауты
- отмена задач
- создание задач из другого потока
#async
Достаньте звёзды с неба вместе с MAGELLANIC CLOUD! ⭐️
Розовый хайлайтер #billionstars создан для тех, кто мечтает сиять как настоящая звезда. Мягкое, деликатное, но заметное свечение — словно ты только что вернулась с прогулки по звёздным туманностям!
Почему стоит попробовать MAGELLANIC CLOUD?
— Лёгко растушёвывается и идеально ложится
— Наслаивается до нужного эффекта сияния
— Освежает и подсвечивает кожу в один миг
Твоя кожа — твоя Вселенная. Дай ей свет от миллиарда звёзд с SODA! 🌙
#sodatips
Образ, пропитанный ветром с вересковых холмов.
Нежность и буря, утончённость и страсть — макияж, вдохновлённый новой ролью Марго Робби в предстоящем фильме «Грозовой перевал». 🤩
🤩Карандаш для губ SWEET TREAT #cherryontop, №101 Cupcake — мягкий контур, как утренний румянец на холодном ветру.
🤩Хайлайтер MAGELLANIC CLOUD #billionstars — свет звёзд, будто отражение луны над пустошью.
🤩Помада Double Tornado #magicalpower (коллекция Winx, 003 Fearsome) — выразительный акцент, соединяющий силу и женственность.
🤩Румяна #rosycheeks, №101 Cherry Cake — лёгкий румянец жизни в холодных тонах Йоркшира.
Создай свой собственный шторм чувств вместе с soda🤩
Уже ждёте выход фильма?
#sodainspiration
H2O just add water energyyyyy 🌊✨
включаем ностальгию и ловим вайб русалок вместе с SODA 🐚
солёный воздух, блеск кожи, влажные текстуры — сегодня ты main mermaid
собрали продукты, чтобы повторить тот самый магический glow 👀
1.Жидкие тени для век Domino #magicalpower. Коллекция Winx, 004 Dragon Fury
2.Хайлайтер STELLAR NEBULA #billionstars
3.Сияющее масло для губ #plumpit, № 101 Fergie
4.Подводка маркер с кисточкой S-CLASS #overpowered, 209 system
Делаем макияж, будто ты только что вышла из воды и готова покорять этот мир 🌊💙
в комментариях пиши, какой сериал вернуть в тренды следующим 👇
#sodainspiration