Отдельно разберём 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
#Elezioni#Slovacchia#Presidenziali
Peter #Pellegrini (#Hlas|S&D) eletto nuovo Presidente della Repubblica Slovacca. L'ex Primo Ministro sarà la 6° figura politica a ricoprire la carica di capo dello Stato.
@OsservatorioEsteri
#Slovacchia
Il #KDH|EPP ha presentato una mozione di sfiducia nei confronti del Vice-Presidente del Parlamento slovacco Lubos #Blaha (#Hlas|S&D), dopo che quest’ultimo ha sostituito il ritratto, presente nel suo ufficio, della Presidente #Čaputová con quello di Che Guevara.
@OsservatorioEsteri
#Slovacchia
Peter #Pellegrini (#Hlas|S&D): “Proseguiremo le trattative solo con #Smer|S&D e #SNS|Destra radicale russofila. Ritengo insostenibile una coalizione con #PS|RE, #KDH|EPP e #SaS|ECR, perché i membri di questi partiti hanno già iniziato ad attaccarsi a vicenda pochi giorni dopo le elezioni.”
@OsservatorioEsteri
#Slovacchia
È stata pubblicata la lista del governo di Robert #Fico (#Smer|S&D):
-Primo Ministro: Robert Fico (Smer);
-Vicepremier e Ministro della Difesa: Robert #Kaliňák (Smer);
-Vicepremier e Ministra dell'Economia: Denisa #Saková (#Hlas|S&D);
-Vicepremier e Ministro dell'Ambiente: Tomáš #Taraba (#SNS/#Život|Estrema destra cristiana);
-Ministro delle Finanze: Ladislav #Kamenický (Smer);
-Ministro dei Trasporti: Jozef #Ráž Jr. (Smer);
-Ministro dell'Agricoltura: Richard #Takáč (Smer);
-Ministro degli Investimenti, dello Sviluppo Regionale e dell'Informatizzazione: Richard #Raši (Hlas);
-Ministro dell'Interno: Matúš Šutaj #Eštok (Hlas);
-Ministro della Giustizia: Boris #Susko (Smer);
-Ministro degli Esteri: Juraj #Blanár (Hlas);
-Ministro del Lavoro e della Famiglia: Erik #Tomáš (Hlas);
-Ministro dell'Istruzione e dello Sport: Tomáš #Drucker (Hlas);
-Ministro della Cultura: Martina #Šimkovičová (#SNS|Destra radicale russofila);
-Ministra della Salute : Zuzana #Dolinková (Hlas);
-Ministro del Turismo: Ján #Krišanda (SNS).
@OsservatorioEsteri