Три способа выполнить множество задач с 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
eVolo Magazine announced the winners of the 2022 Skyscraper Competition.
The Jury selected 3 winners and 20 honorable mentions from 427 projects received.
The FIRST PLACE was awarded to CLIMATE CONTROL SKYSCRAPER designed by Kim Gyeong Jeung, Min Yeong Gi, and Yu Sang Gu from South Korea.
The recipients of the SECOND PLACE are Wang Jue, Zhang Qian, Zhang Changsheng, Li Muchun, and Xu Jing from China for the project TSUNAMI PARK.
NEW SPRING: AGRO-ECOLOGICAL SKYSCRAPER designed by Michał Spólnik from Austria and Marcin Kitala from Poland received the THIRD PLACE.
#arch_shovel#architecture#award#architectural#competition#news#skyscraper
Wettingen railway station area.
Architecture: Schneider & Schneider Architects
Visual by OVI images
.
#iarchitectures#superarchitects#flatdesign#architectural#archdaily#architecture#architecturedrawing#archi_students#showitbetter#archisource#archdraw#architecturedesign#arch_shovel#arch_shovel_architecture
Red Bull Headquarters in Leipzig, Germany.
.
Visualization by Sora
Architecture: 3XN Architects
.
#iarchitectures#superarchitects#flatdesign#architectural#archdaily#architecture#architecturedrawing#archi_students#showitbetter#archisource#archdraw#architecturedesign#arch_shovel#arch_shovel_architecture
Proposal for the new National Design Museum in Sejong.
.
Architecture: STLarchitects
.
#iarchitectures#superarchitects#flatdesign#architectural#archdaily#architecture#architecturedrawing#archi_students#showitbetter#archisource#archdraw#architecturedesign#arch_shovel#arch_shovel_architecture
Grand Tower.
Architecture by Werner Sobek.
#iarchitectures#superarchitects#flatdesign#architectural#archdaily#architecture#architecturedrawing#archi_students#showitbetter#archisource#archdraw#architecturedesign#arch_shovel#arch_shovel_architecture
A mixed-use building, housing, workspace, business, hotel, student residence by Leclercq Associes✨
.
Images by We are Contents
.
#iarchitectures#superarchitects#architectural#archdaily#architecture#architecturedrawing#archi_students#showitbetter#archisource #
#archisketcher#arqsketch#arch_shovel#studioklm
The circular form of World of Volvo.
Architecture by Henning Larsen.
Visualization by Kvant.1 and Henning Larsen
.
#iarchitectures#superarchitects#flatdesign#architectural#archdaily#architecture#architecturedrawing#archi_students#showitbetter#archisource#archdraw#architecturedesign#arch_shovel#henninglarsen