Три способа выполнить множество задач с 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
🔥💸 Feeling Lucky? More like feeling HOT! 💸🔥
HOT MONEY SLOT, the second game in TrueLab’s Hot Series, is OUT NOW. We’ve taken those good old fire and fruit line 3x3 mechanics and turned up the heat with top-notch graphics and sound.
The Hot Series games are the perfect complement to any game portfolio. Do you prefer quick action with a classic vibe but can't get yourself to revisit the oldies? This one's for you. Let's go. 🎰
➡️ SPIN IT: https://bit.ly/Hot-Money-Demo
#HotMoneySlot#OutNow#HotSeries#iGamingNews#TrueLab#TrueGames#TrueSlots
🔞 | Play Responsibly
There's something irresistibly charming about classic slots, and with our HOT Series, we're revamping these favourites with stunning new graphics and smart mechanical changes. Hot Money Slot is up next, featuring 27 variable lines that let you tweak volatility and hit rate to your liking and a hot, shiny new look. 🔥
➡️ Stay tuned for release on June 13th! 🗓️
#HotMoneySlot#ComingSoon#HotSeries#ClassicsRevamped#TrueGames#TrueLab#TrueSlots
Brace yourselves—Hot Money Slot will soon fan the flames of your classic gaming desires. As the second sizzling title in the TrueLab Hot Classic Series, this 3x3 firecracker fuses classic slot excitement with a scorching fruit theme. Its slot gaming in its Truest form - with vibrant, burning symbols and intense action with every spin. 🍒🍉🍋🔥
Feeling lucky? Or just love playing with fire? Either way, this game's got your name all over it.
Stay tuned, and keep your fire extinguishers handy. 🔥🍒
🗓️ DEMO OUT NEXT WEEK!
#HotMoneySlot#ComingSoon#HotSeries#TrueLabGames#TrueClassics#TrueGames#TrueSlots
The clocks are ticking down, and things are heating up! We're now only 2 days away from the launch of HOT DEVIL SLOT, the first of 3 titles to form part of our classic-inspired HOT SERIES! 🔥
🗓️ Let's raise a little hell come Wednesday 8th May! 😈
#HotDevilSlot#HotSeries#OutSoon#NewSlots#TrueLab#TrueSlots#TrueGames
100 HOT SLOT is OUT NOW!
As the grand finale of our three-way TrueLab Hot Series, this classic slot features 100 lines for maximum enjoyment and fiery fun. 🍒🍉🍋🔥
Don’t miss out on this blazing conclusion to our Hot Series!
SPIN IT! ➡️https://bit.ly/100HS-Demo
#100HotSlot#HotSeries#OutNow#FruitAndFire#ClassicSlots#TrueLab#TrueGames#TrueSlots