Три способа выполнить множество задач с 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
«Мое художественное вдохновение приходит от жизни и всего происходящего в моем окружении. Влияние религии, политики и социально-экономических истин на мой народ – это то, что демонстрирует мое искусство. Нигерия наполнена всем, что влияет на мое творчество. Моя страна - это огромное многонациональное население с богатством культур и этнических традиций, и в этом есть большое сходство с Россией", - говорит художник.
«Страсть к цвету заставляет меня оживать, - рассказывает о себе Бен Ибебе. - Занимаясь творчеством на экваторе, где круглый год светит солнце, вы поражаетесь разноцветью природы и земли. Я люблю красные, зеленые, умбровые (земляные), синие и желтые цвета. Для художника есть преимущество для творчества среди ярких культур и этнических групп. В сочетании с красочными фестивалями вы не можете не быть очарованы этой красотой…»
#AFROFUTURISM#GatingoArtNews#NIDO#ArtFutureGallery#BenIbebe
Поразительные образы богатого культурного наследия Нигерии, сталкивающиеся с глобализированным миром искусства, открывают новые горизонты в управлении художественными процессами. На выставке "АФРОФУТУРИЗМ" зрителям предстанет серия уникальных картин, выполненных мастихином и маслом на холсте с текстурным объемом, соединяя абстракцию и скульптуру через упорядоченный хаос массивного стиля живописи «импасто» - образы городской архитектуры, оживленных рынков, традиций и романтики в контексте жизни в Западной Африке. Бен Ибебе живет и работает в Кадуне, на севере Нигерии. 🌈После фестиваля искусств #МастерКласс, который пройдет в Петербурге с 5 по 18 сентября, выставка переедет из Академии Штиглица в галерею искусств будущего #ArtFutureGallery (Москва) #МирАфрикиСегодняЗавтраВчера#GatingoArtNews#АкадемияШтиглица#BenIbebe#NIDO