Три способа выполнить множество задач с 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
🇨🇳Pékin durcit le ton
🔴La #Chine avertit qu’elle ripostera si le projet de loi sur l’« accélération industrielle » est adopté sans modification. En cause, des règles jugées pénalisantes pour ses entreprises, notamment en ce qui concerne l’accès aux financements publics.
🔴Le texte prévoit d’imposer des critères stricts d’origine locale dans plusieurs secteurs clés comme l’automobile, les batteries, le solaire ou les matières premières critiques. Une mesure qui vise à renforcer la production sur le continent, mais que #Pékin considère comme une restriction aux investissements étrangers.
RT en français • Osez questionner !
⏺Le défilé de la Victoire, qui s'est tenu aujourd'hui à #Pékin à l'occasion du 80e anniversaire de la victoire dans la Seconde Guerre mondiale ainsi que sur le militarisme japonais, a été un événement grandiose non seulement pour la #Chine, mais aussi pour le monde entier.
Daria Vaganova, notre envoyée spéciale, était sur place et va nous partager les détails.
RT en français • Osez questionner !
La coopération entre la #Russie et la #Chine s'est activement développée, #Pékin est désormais l'un des partenaires les plus fiables de #Moscou. L'économie, la science, l'espace, la défense : ce ne sont que quelques-uns des domaines dans lesquels une interaction bilatérale productive se met en place.
Pour creuser le sujet, nous recevons Xavier Moreau, directeur de Stratpol, depuis Moscou.
RT en français • Osez questionner !
🇨🇳🚙 Le plus grand salon automobile au monde a ouvert à Pékin. Comme cela a été noté par TASS, 1.451 modèles de voitures sont présentés, dont 181 pour la première fois.
#pékin#salon#voitures
La coopération entre la #Russie et la #Chine s'est activement développée, #Pékin est désormais l'un des partenaires les plus fiables de #Moscou. L'économie, la science, l'espace, la défense : ce ne sont que quelques-uns des domaines dans lesquels une interaction bilatérale productive se met en place.
Pour creuser le sujet, nous recevons Xavier Moreau, directeur de Stratpol, depuis Moscou.
RT en français • Osez questionner !
🧧La marche du Régiment des Immortels a lieu à l’ambassade de Russie à #Pékin.
Le cortège est mené par l'ambassadeur de #Russie en #Chine, Igor #Morgoulov, et l'actrice Maria #Kojevnikova.
RT en français • Osez questionner !