Отдельно разберём 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
Ustad Saami — Pakistan Is for the Peaceful (Glitterbeat, 2020)
#surti#traditional#tambura#harmonium#tabla#Pakistan
Устад Саами — последний из ныне живущих певцов, способных исполнить древние 49-нотные микротональные гаммы традиции Сурти. Сурти сформировалась еще до каввали — традиции исполнения суфийской поэзии под музыку. В общем, исполнение песен в традиции Сурти считается спорным в исламском обществе, потому что она появилось еще до Мухаммеда. Даже под угрозой со стороны исламских фундаменталистов, мастер всю жизнь практиковал исчезающее искусство, которое передавалось из поколения в поколение с 13 века. Издание The Quietus отмечает, что «когда Устад Саами умрёт, эти 49 нот умирут вместе с ним». Pakistan Is for the Peaceful — его второй альбом, состоящий из трех композиций. Запись проходила в Карачи во время живого сета на крыше дома мастера под музыкальное сопровождение его четырёх сыновей. Продюссированием записи занимался Ян Бреннан, известный по работам с Tinariwen.
Spotify | AppleMusic | Bandcamp
Ustad Saami — A for Aleph Live (A for Aleph, 2024)
#surti#khyal#tambura#harmonium#tabla#Pakistan
Выступление прославленного певца Устада Саами и его сыновей на студии пакистанского лейбла звукозаписи A for Aleph. На записи можно услышать произведение Khayal (خیال), названное в честь одной из доминирующих форм музыки Северной Индии, и Kalam-e-Khusro, посвященное культовому суфийскому поэту Амир Хосрову. У него более семи веков назад обучался далекий предок Устада Саами, Миян Самат.
Семья Устада Насируддина Саами стояла у истоков школы каввали, основанной в XIII веке в Дели. Стиль Саами называется «Судх Бани» и, судя по всему, он является последним из ныне живущих вокалистов, практикующих микротональную систему шрути из 49 нот.
🔗 YouTube | Spotify | AppleMusic | Bandcamp
Ustad Saami — East Pakistan Sky (Glitterbeat Records, 2021)
#surti#khyal#traditional#tambura#harmonium#tabla#Pakistan
Семья Устаада Насируддина Саами стояла у истоков школы каввали, основанной в XIII веке в Дели. Его предок Миян Самат обучался у самого Амира Хосрова, культового суфийского поэта, после чего традиция передавалась от отца к сыну в течение более чем 7 веков. Сам Саами начал свой творческий путь в середине 50-х годов под руководством своего дяди Устаада Мунши Разиуддина. В течении многих лет обучения ему было разрешено выражать свои мысли только посредством пения. Стиль Саами называется «Судх Бани» и судя по всему он является последним из ныне живущих вокалистов, практикующих микротональную систему шрути из 49 нот. East Pakistan Sky – его третий альбом, спродюссированный Яном Бреннаном, известным по работе с Tinariwen. Запись проходила в Карачи во время живого сета на крыше дома мастера под музыкальное сопровождение его четырёх сыновей.
Spotify | AppleMusic | Bandcamp | VK