Три способа выполнить множество задач с 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
💡 浴室沉思
曾经 smart is the new sexy。现在 sexy is the real smart 了。谁能拒绝一个穿黑色吊带的硅谷黑长直小姐姐给你讲
harness engineering 呢。
via 浴室沉思
标签: #smart#sexy#new
⚡️探索号频道
⚡️探索者频道
⚡️探索者交流群
⚡️ Youtube 频道:科技探索者
每天推荐有趣内容,欢迎订阅、转发。
💥Bañador Mujer Reductor Vientre Plano
Brilla en la playa con estilo y confianza
✅OFERTA: 8.99€
❌ Antes: 14.99€
💰Ahorras un 40%🔥
Diseño que realza tu figura y te hace sentir segura
👉 Luce tu mejor versión este verano
#banador#moda#verano#vientreplano#sexy#navidad#tendencia#viral
🛰️Oferta publicada en Moda y Belleza
💥Pack Navideño de 6 Bragas Mujer All Of She
Renueva tu ropa interior con estilo y comodidad
✅OFERTA: 12.99€
❌ Antes: 23.99€
💰Ahorras un 46%🔥
Diseño sexy de encaje y tejido transpirable para sentirte fabulosa
👉 Descubre la colección ahora
#bragas#ropainterior#modafemenina#tendencia#sexy#navidad#ofertas#viral
🛰️Oferta publicada en Moda y Belleza