Функция asyncio.wait() это еще один способ вызвать множество асинхронных задач.
Она работает в нескольких режимах.
1. Самый простой - ждем завершения всех задач
async def main():
tasks = [asyncio.create_task(do_it(i)) for i in range(10)]
done, pending = await asyncio.wait(
tasks,
return_when=asyncio.ALL_COMPLETED
)
for task in done:
try:
print(task.result())
except Exception as e:
print(e)
Очень похоже на gather, но работает не так.
▫️возвращает не результаты, а два сета с объектами Task у которых можно забрать результат через task.result() если они в списке done
▫️не гарантирует порядок результатов так как оба объекта это set
▫️не выбрасывает исключение когда оно появляется, а сохраняет его в Task. Исключение появится когда попробуете забрать резултьтат.
2. Ждем завершения первой задачи, даже если там ошибка.
async def main():
tasks = [asyncio.create_task(do_it(i)) for i in range(3)]
done, pending = await asyncio.wait(
tasks,
return_when=asyncio.FIRST_COMPLETED
)
# в done может быть несколько задач!
for task in done:
try:
print(task.result())
except Exception as e:
print(f"Fail: {e}")
# Оставшиеся задачи в pending, как правило, нужно отменить, иначе они будут продолжать работать
for task in pending:
task.cancel()
В сете done будут таски которые успели завершится, причем как успешно так и нет.
3. До первой ошибки.
Тоже самое, но с аргументом FIRST_EXCEPTION
done, pending = await asyncio.wait(
tasks,
return_when=asyncio.FIRST_EXCEPTION
)
Функция завершается как только первая задача упадет с ошибкой.
Учтите, что в любом случае done вы можете обранужить несколько задач, как с ошибками так и успешные.
↗️ Полный листинг примеров здесь
#async
#Commentary: #Ethiopian National Dialogue Commission: Monolingual mediator in multilingual country
Established in 2021, the National Dialogue Commission (#NDC) is tasked with fostering inclusive dialogue, peace, and social cohesion in #Ethiopia. However, Mesfin Wodajo argues the Commission operates in a “de facto monolingual” manner in a country of more than eighty languages. Despite its commitment to inclusivity, he contends its heavy reliance on Amharic risks “alienating” large segments of the population.
Mesfin cautions that “language could constrain or empower participants in such national dialogues" and emphasizes that the absence of a clear translation and interpreting strategy reflects an “age-old ideology of implicit linguistic nationalism.”
He urges the NDC to “adopt a multilingual operational framework” to safeguard linguistic rights and ensure meaningful participation for all.
https://addisstandard.com/?p=55668
#Italia#Calabria#Catanzaro
#NdC|Centro presenterà una lista alle elezioni comunali di Catanzaro. Non è ancora chiaro chi sosterrà il partito di Mastella.
@UltimoraPolitics
❗️Il #Senato manda a processo Carlo #Calenda: era stato querelato per diffamazione da Clemente #Mastella (#NdC) per un post durante la campagna elettorale delle europee.
Il centrodestra si astiene, Calenda mandato a processo dagli alleati del campo largo.
@UltimoraPolitics
#Italia#Campania#Benevento
Il mastelliano Nino #Lombardi (#NdC) vince le elezioni provinciali col 73%, battuto il candidato di PD-Azione #Calzone, centrodestra assente. Esulta #Mastella: "Alle elezioni pronti ad andare da soli in tutta la Campania."
@UltimoraPolitics
#Italia🇮🇹
#Regionali
#Campania
❗️Roberto #Fico (#M5S|LEFT; sostenuto anche da #PD|S&D, #AVS|G/EFA|LEFT, #PSI|S&D, #PRI|Centro, #PSDI|Centro-sinistra; #Volt|G/EFA, #IV|RE, #PiùEu|RE, #nDC|Centro, #NS|Centro-destra, liste minori e civici) è stato eletto Presidente della Giunta regionale della Campania.
@TuttoElezioni
#Italia#Elezioni#Provinciali#Avellino
Il Tar di Salerno ha accolto il ricorso di Angelantonio D’Agostino disponendo l’annullamento delle operazioni elettorali concernenti l’elezione del Presidente della Provincia di Avellino relativamente alle fasce demografiche B e D e conseguente rinnovazione delle elezioni stesse limitatamente alle suddette fasce demografiche B e D.
Le elezioni del 2021 avevano visto la vittoria di Rino #Buonopane, sostenuto da #PD, #M5S, #SI e #NdC con il 50.05% contro Angelo Antonio #D’Agostino, sostenuto dalla maggioranza comunale ad Avellino, #Davvero, #IV, #PiùE e #Azione, che aveva ottenuto il 49,95%.
@UltimoraPolitics
#Italia#Campania#Provinciali
Provinciali #Caserta, dati finali - RICOSTRUZIONE ESCLUSIVA OsservatorioItaliano:
🔵 Centro destra per la Provincia di Caserta (#FdI-#FI-#Lega-#NM): 31.85% - 6 seggi
🟠 Campo Largo per Caserta (#PD-#AVS-#NdC-#IV): 21.42% - 4 seggi
🔵 Anacleto Colombiano Presidente (Civica centrodestra legata a Colombiano): 20.61% - 3 seggi
🟠#ATA|Deluchiani: 14.60% - 2 seggi
🔵 Liberi e Democratici per Caserta (#Azione-dissidenti #PSI legati al consigliere regionale Giovanni Iovino): 8.90% - 1 seggio
🟠 Avanti Caserta (#PSI): 2.63% - 0 seggi
*Nella giornata di domani verranno pubblicati i dati ufficiali
@OsservatorioItaliano
#Italia#Comunali#Campania
Comunali di #Salerno: De Luca spacca le coalizioni ed è un tutti contro tutti. Di seguito i candidati:
📌 Vincenzo #DeLuca, sostenuto da #PD, #PSI, #EV, #ATA e civiche deluchiane
📌 Franco Massimo #Lanocita, sostenuto da #M5S, #SI e civiche di sinistra
📌 Armando Zambrano, sostenuto da #Azione, #IV, #NdC, #PLD e #FI
📌 Gherardo Maria #Marenghi, sostenuto da #FdI, #Lega e #NM
📌 Mimmo Ventura, sostenuto da #AP e Dimensione Bandecchi
📌 Alessandro Turchi, civico
@OsservatorioItaliano