Три способа выполнить множество задач с 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
⏺Un ancien président congolais ciblé par les États-Unis
Plusieurs sanctions frappent désormais Joseph #Kabila, accusé de soutenir l’#AFC-M23, la rébellion qui occupe une bonne partie de l'est du pays. Un tournant considéré comme décisif dans ce contexte violent. Quel impact cela aura-t-il sur une sphère politique toujours fragile ?
Les détails avec Eunice Mukika.
RT en français • Osez questionner !
⏺Un ancien président congolais ciblé par les États-Unis
Plusieurs sanctions frappent désormais Joseph #Kabila, accusé de soutenir l’#AFC-M23, la rébellion qui occupe une bonne partie de l'est du pays. Un tournant considéré comme décisif dans ce contexte violent. Quel impact cela aura-t-il sur une sphère politique toujours fragile ?
Les détails avec Eunice Mukika.
RT en français • Osez questionner !
🇨🇩#RDC : Kabila sanctionné
Selon Reuters, les États-Unis vont imposer des sanctions à l’ancien président congolais Joseph #Kabila, accusé par le Trésor américain d’avoir soutenu financièrement l’AFC, branche politico-militaire liée aux rebelles du M23, dans l’est de la RDC.
#Washington affirme que ce soutien a alimenté l’instabilité et entravé les efforts de paix entre Kinshasa et Kigali. Les sanctions prévoient le gel de ses éventuels avoirs aux États-Unis et l’interdiction de transactions dans le système financier américain.
RT en français • Osez questionner !
🇨🇩#RDC : Kabila sanctionné
Selon Reuters, les États-Unis vont imposer des sanctions à l’ancien président congolais Joseph #Kabila, accusé par le Trésor américain d’avoir soutenu financièrement l’AFC, branche politico-militaire liée aux rebelles du M23, dans l’est de la RDC.
#Washington affirme que ce soutien a alimenté l’instabilité et entravé les efforts de paix entre Kinshasa et Kigali. Les sanctions prévoient le gel de ses éventuels avoirs aux États-Unis et l’interdiction de transactions dans le système financier américain.
RT en français • Osez questionner !
❕Kinshasa : des militants de l’UDPS dans les rues
À #Kinshasa, plusieurs milliers de militants de l’#UDPS ont investi les rues ce lundi pour soutenir les sanctions américaines contre l’ancien président Joseph #Kabila et réaffirmer leur appui au chef de l’État Félix #Tshisekedi. Une mobilisation qui a fortement marqué la capitale, dans un contexte de sanctions visant l’ancien chef de l’État.
🗣Les détails avec Eunice Mukika.
RT en français • Osez questionner !