Три способа выполнить множество задач с asyncio
Функция для примера:
async def do_it(n):
await asyncio.sleep(random.uniform(0.5, 1))
return n
1. Последовательный вызов
async def main():
for i in range(100):
result = await do_it(i)
Такой вызов имеет смысл только тогда, когда результат одной задачи требуется для вызова следующей.
Если они независимы, то это антипаттерн, так как аналогичен простому синхронному вызову по очереди.
2. Упорядоченный результат
async def main():
tasks = [do_it(i) for i in range(100)]
results = await asyncio.gather(*tasks)
Выполняет корутины конкурентно и возвращает результат в виде списка.
Полезен когда требуется получить результаты в том же порядке в котором задачи отправлены.
3. Результат по мере готовности
tasks = [asyncio.create_task(do_it(i)) for i in range(100)]
for cor in asyncio.as_completed(tasks):
result = await cor
Так же выполняет корутины конкурентно, но не гарантирует порядок. Результат возвращается по мере готовности, каждый отдельно.
Полезен когда нужно обработать любой ответ как можно скорее.
#async
Miguel Díaz-Canel Bermúdez
(@DíazCanelB) en X
Volvimos al cementerio memorial de San Petersburgo, panteón de 490 mil hijos de la Ciudad Héroe que resistió 900 días de #Bloqueo nazi sin rendirse. #Cuba cuenta aquí con grandes amigos. Juntos evaluamos proyectos y recorrimos sitios históricos y de interés para la cooperación.
Miguel Díaz-Canel Bermúdez
(@DiazCanelB) en X
La desvergüenza una vez más apoderándose de los políticos cínicos de EE.UU. Está probado que el éxodo migratorio en #Cuba es proporcional al endurecimiento del #bloqueo, que priva a nuestro pueblo de los bienes esenciales. La humanidad peligra por el neofascismo de ustedes.
https://x.com/DiazCanelB/status/1886852402625851777
🇨🇺✊ Bruno Rodríguez Parrilla, ministro de Relaciones Exteriores de #Cuba, reiteró hoy la denuncia al #Bloqueo económico, comercial y financiero de Estados Unidos, cuyos efectos se reforzaron e internacionalizaron hace 28 años, con la firma de la #LeyHelmsBurton.
Esta legislación codifica el bloqueo genocida y la agresión económica del Gobierno estadounidense contra Cuba, a escala internacional y de modo abarcador, se precisa en post de la Agencia Cubana de Noticias.
En #Holguín, "capital del arte joven" por estos días, nuevamente "#FiestaDeLosAbrazos" 🤗, contra el #Bloqueo económico norteamericano y por #PalestinaLibre💓.
#RomeríasDeMayo
#Cuba
AMPPHolguin
Gobierno Provincial de Holguín
Solidarietà che attraversa il mare
In un gesto di profonda fratellanza e sostegno, il Messico ha inviato a Cuba oltre 814 tonnellate di aiuti umanitari, in risposta all'aggravarsi del blocco economico.
Le navi della Marina messicana Papaloapan e Isla Holbox sono salpate da Veracruz cariche di:
Alimenti di prima necessità: latte liquido e in polvere, carne, biscotti, fagioli, riso, tonno, sardine, olio.
Articoli per l'igiene personale.
Un'azione ordinata dalla Presidente Claudia Sheinbaum che riafferma i legami storici e la vocazione solidale tra i due popoli, oltre all'impegno per la cooperazione internazionale.
"Cuba e Messico siamo popoli fratelli, eredi di una lunga storia di solidarietà che oggi onoriamo".
Questo sostegno arriva mentre proseguono i negoziati diplomatici per garantire anche forniture energetiche all'isola, di fronte a minacce di dazi da parte degli Stati Uniti.
La solidarietà latinoamericana non si ferma.
#Cuba#Mexico#Solidaridad#AyudaHumanitaria#Cooperación#Bloqueo#LatinoamericaUnida
https://www.marx21.it/internazionale/il-messico-invia-a-cuba-piu-di-800-tonnellate-di-aiuti-umanitari/