Отдельно разберём 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
#продажа#П451⤴️ фото ⤴️
В эфире рубрика «Удивительное рядом».
Любители 🧡 оранжевого цвета, как правило, общительны и дружелюбны. Им нравится проводить время с 🫂 близкими, они легко заводят новые знакомства и умеют создавать комфортную атмосферу для общения.
Стол по всем канонам и традициям, за которым видно каждого, кто сидит. Поможет как разглядеть каждую соринку и морщинку собеседника, так и устроить захват соседского десерта — все так, как завещал 🫅🏻 Король Артур. А мягкие мандаринки усадят любую булочку, даже самую сдобную 🤭
🍋 22,8 млн
📐 48 м²
🪜 этаж 2 из 5
📍Лабутина, 3
📲 На связи агент Яна @zaviktorina
*больше фото и план в комментариях ⤵️
Нестыдные | Петербург.
Подписаться
💥 АКТУАЛЬНОСТИ ПОСТ | АРЕНДА И ПРОДАЖА💥
#А779
150к/мес +к/у
Петровский проспект, 2
#А783
🔥#БЕЗКОМИССИИ
450к/мес + к/у
Ждановская, 45
#А784
250к/мес + к/у 190к/мес + к/у
Гражданская улица, 27
______________________
#П450
🍋 99,48 млн
Ждановская, 45
#П451
🍋 22,8 млн
Лабутина, 3
Если на канале выходила публикация с вашей квартирой в аренду или в продажу и она сейчас актуальна — напишите в таком же формате* короткое сообщение в комментариях к этому посту ⤵️
- номер объявления (хэштег)
- адрес
- стоимость
Нестыдные | Петербург.
Подписаться
💥 АКТУАЛЬНОСТИ ПОСТ | ПРОДАЖА 💥
#П369
13.7 млн 13 млн
Туристская, 10к1
#П431
12,7 млн 12,5 млн
Проспект Королёва, 21к1
#П456
22 млн 21,9 млн
Белоостровская, 10к2
#П458
14 млн 13,5 млн
Шевченко, 11
#П460
10,5 млн 9 млн
Железноводская, 21
#П463
21,25 млн 20,75 млн
Вадима Шефнера, 12к1
#П457
29,9 млн 29,5 млн
Петровский проспект, 28к1
#П462
22,5 млн 21 млн
Магнитогорская, 3к2
#П451
22,8 млн
Лабутина, 3
#П455
43,3 млн
Наличная, 26к4
Если на канале выходила публикация с вашей квартирой в продажу и она сейчас актуальна — напишите в таком же формате* короткое сообщение в комментариях к этому посту ⤵️
- номер объявления (хэштег)
- адрес
- стоимость
Нестыдные | Петербург.
Подписаться