Три способа выполнить множество задач с 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
📷Джон Траволта, Джон Ву и Кристиан Слейтер на премьере фильма «Сломанная стрела», 1996 год.
Этим фото анонсирую свой цикл текстов о фильмах 30-летней давности. Я тут слегка задолжал уже с другими постами, так что в ближайшее время постараюсь потихоньку обещанное написать и выложить. А цикл запущу пораньше, так как в прошлом году мне такая идея в голову пришла достаточно поздно.
#ВИДЕОТЕКА
#BrokenArrow
#СломаннаяСтрела
#JohnTravolta
#ДжонТраволта
#JohnWoo
#ДжонВу
#ChristianSlater
#КристианСлейтер
🎬📷Джон Ву, Кристиан Слейтер и Джон Траволта на съемках и премьере фильма «Сломанная стрела».
#ВИДЕОТЕКА
#BrokenArrow
#СломаннаяСтрела
#JohnTravolta
#ДжонТраволта
#ChristianSlater
#КристианСлейтер
#JohnWoo
#ДжонВу
В 1994 году боевик «Скорость» выстрелил так, что руководство студии «20-й Век Фокс» незамедлительно решила пустить в дело еще одну работу сценариста Грэма Йоста, пока еще было горячо. Так на свет появился второй голливудский фильм Джона Ву «Сломанная стрела». Эта картина тоже отлично проявила себя в прокате, но такого всеобщего восторга уже не наблюдалось. Да и сам гонконгский маэстро жанра экшн следом поставит культовый фильм «Без лица», так что «Сломанной стреле» как будто суждено было остаться в тени.
И вроде бы все по делу. Студия подсократила на монтаже (далее это войдет в привычку с голливудскими работами Джона Ву) первую версию картины от самого режиссёра. Причём в окончательном варианте «Сломанная стрела» больше напоминает стандартный голливудский боевик 90-х, чем авторскую ленту с фирменным почерком мастера. Да, ставка сыграла, потому что в прокате фильм выступил очень прилично, но самому постановщику он лишь помог закрепить его репутацию кассового режиссёра — и не более того. В общем, ничего личного, только бизнес.
Однако все же почему-то к «Сломанной стреле» хочется возвращаться и 30 лет спустя. И в первую очередь — ради потрясающего актерского перфоманса Джона Траволты, который создал едва ли не самый обаятельный образ антагониста в боевиках эпохи VHS, если не больше. Траволта в роли решившего похитить две ядерные бомбы майора ВВС США здесь царит на экране, притягивая к себе внимание буквально в каждой сцене со своим участием, буквально каждой фразой и жестом. К его безусловному гению и таланту еще и добавился тот невероятный кураж, который он поймал на съемках «Криминального чтива». И это просто надо видеть.
Кристиан Слэйтер в главной роли, конечно, старается, и даже большую часть трюков выполнил самостоятельно, но Траволта в этом фильме переигрывает его уже одним прикуриванием сигареты. Вот настолько он хорош в «Сломанной стреле», и вот почему Джон Ву следом пригласил и в «Без лица», где от их дуэта с Николасом Кейджем буквально искрило. Но об этом как-нибудь потом.
А «Стрела» же при всей своей стандартности все равно выглядит на голову выше большинства современных боевиков. Это качественное и профессионально сделанное кино, где вроде бы и придраться особо не к чему. Разве что только в черновом варианте рука Джона Ву действительно могла бы быть более заметной, но это мы уже вряд ли когда-нибудь узнаем. То, что получилось в итоге, вполне способно вас увлечь и даже приятно удивить, если вы еще ни разу не смотрели этот фильм. Да, не жанровый шедевр, но кино по-своему примечательное.
P.S. И еще у вас гарантированно останется в памяти музыка Ханса Циммера к «Сломанной стреле», которая звучит как причудливый микс Вангелиса и Эннио Морриконе времен спагетти-вестернов. Что, в общем-то, в тему, если увидеть, где по сюжету разворачиваются события фильма.
#ВИДЕОТЕКА
#ВИДЕОТЕКАКино1996
#BrokenArrow
#СломаннаяСтрела
#JohnWoo
#ДжонВу
#JohnTravolta
#ДжонТраволта
#ChristianSlater
#КристианСлэйтер