Три способа выполнить множество задач с 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
😄What
➖➖➖➖➖➖
🔘What can be used in questions to ask for information.
What time do you usually wake up?What time do you usually wake up?
🔘We can also use what in questions to show that we are surprised.
What?! You wake up at noon?What?! You wake up at noon?
🔘We can use what on its own to ask someone to say something again.
🔜I don't like chocolate. What? I don't really like chocolate.
🔘What can introduce an opinion.
🔜What a cute puppy!
#What👨🏫@America
➖➖➖➖➖➖➖➖➖➖➖➖
🆕 Crypto News @Money
😁 Crypto Game @Egame
🇺🇸 US News @America
🇯🇵 Japan News @Japan
🇦🇪 UAE News @Dubai
▶️ Popular Movies @Videos
😜 Best Funny Video @Funnys
*This world indeed is nothing, just last weekend we were enjoying with you in all occasions we attended.. You even promised to hung around with us till January only for you to leave us unannounced without even saying goodbye to me.. #What a great lost!! 😭😭*
*I love you but God loves you more.. #RIP My December Salary*
😭😭😭😭😭😭😭😭😭
@jokearoundtheglobe
Q-q起q名m风f波b- 起名风波 Le prénom (2012)
直达链接:https://pan.quark.cn/s/42406d845ae2
#起名风波#Le prénom
#名字#What's in a Name
链接:https://link3.cc/sf_com
#电影#喜剧#其他#10年代