Отдельно разберём 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
Harry Pater y el pañal filosofal - 12 Libros divertidos para padres primerizos
#Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Padre, El Último Mono - 12 Libros divertidos para padres primerizos #Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Harry Pater y el pañal filosofal - 12 Libros divertidos para padres primerizos #Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Padre no hay más que uno… y ese soy yo - 12 Libros divertidos para padres primerizos #Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Guía urgente del padre primerizo - 12 Libros divertidos para padres primerizos #Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Harry Pater y el pañal filosofal - 12 Libros divertidos para padres primerizos #Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Manual Para Padres Frikis. Año 0 - 12 Libros divertidos para padres primerizos #Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Papá, El Niño También Es Tuyo - 12 Libros divertidos para padres primerizos #Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Oh my dad!: Porque ellos también cuentan - 12 Libros divertidos para padres primerizos #Libros#Lectura#PadrePrimerizo#ParaPapá
https://www.milideaspararegalar.es/blog/libros-divertidos-para-padres-primerizos/
💻www.milideaspararegalar.es
Papi en prácticas - 14 tazas de desayuno para regalar a tu padre
#Taza#TazasDivertidas#ParaPapá#RegalosParaPapá#PadrePrimerizo
https://www.milideaspararegalar.es/blog/tazas-de-desayuno-para-regalar-a-tu-padre/
💻www.milideaspararegalar.es
Papi en prácticas - 14 tazas de desayuno para regalar a tu padre #Taza#TazasDivertidas#ParaPapá#RegalosParaPapá#PadrePrimerizo
https://www.milideaspararegalar.es/blog/tazas-de-desayuno-para-regalar-a-tu-padre/
💻www.milideaspararegalar.es