Три способа выполнить множество задач с 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
Акция «ПенсиON с комфортом» продлена на 2 месяца!
Оформите заявление о перечислении пенсии или пособия на базовый счет, открытый в Белгазпромбанке, закажите бесплатную карточкуCashalot Комфорт по 31 августа 2023 года и получите на счет 50 BYN после первого зачисления пенсии (пособия)!
Cashalot Комфорт – это:
•бесплатный выпуск и обслуживание карточки;
•кэшбэк до 10% при покупках в магазинах-партнерах;
•кэшбэк 2% во всех аптеках, оптиках, магазинах товаров для сада и огорода;
•удобный интернет-банк и мобильное приложение для оплаты ЖКХ и открытия вкладов.
Подробнее – здесь.
#белгазпромбанк#бгпб#cashalot#bgpb#cashback
Сентябрь по традиции ассоциируется с наступлением нового культурного сезона. Знаковое место в белорусской арт-повестке занимают художественные проекты «Арт-Минск» и «Осенний салон», инициатором проведения которых выступил в свое время Белгазпромбанк.
Ежегодная выставка-продажа «Осенний салон с Белгазпромбанком»проходит в Минске с 2015 года.
Напоминаем, что все понравившиеся работы вы можете купить в рассрочку с «Картой покупок». В случае, если вы обладатель карточки «Cashalot», то приобретая произведение искусства на выставке, получите приятный кэшбэк.
Открытие выставки состоится 7 сентября в 18:00 во Дворце искусства на Козлова, 3, и по традиции будет бесплатным для посетителей. Экспозиция продолжит работу до 8 октября.
Время работы: пн-вс 11:00 – 21:00.
Стоимость билетов: 12 BYN – полный, 8 BYN – льготный.
Ждем вас! #belgazprombank#bgpb#art#cashalot#kartapokupok
Белгазпромбанк продлевает по 31 июля акции для своих клиентов!
Оформите новую карточку Visa Cashalot с кредитом на потребительские нужды и кэшбэком или карту рассрочки «Карта покупок» с овердрафтом от 200 до 5 000 рублей, которая выпускается и обслуживается бесплатно и получите в подарок стильную сумку-шоппер, в которую так удобно складывать любые покупки.
Подробнее об акциях «Стильный шопинг с «Картой покупок» и «Пора на шопинг с Cashalot!».
Ждем вас в офисе Белгазпромбанка!
#belgazprombank#bgpb#белгазпромбанк#бгпб#cashalot#картапокупок#акция