Три способа выполнить множество задач с 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
#Austria
#ÖVP|EPP, #SPÖ|S&D e #Neos|RE hanno finalizzato il contratto di governo e nelle prossime ore presenteranno il programma di governo comune. Il nuovo governo potrebbe giurare già lunedì.
@OsservatorioEsteri
Пока в Германии идут переговоры по формированию коалиции в Австрии они подошли к концу. Это произошло спустя 150 дней после выборов.
Первоначально в коалиции Австрии должны были участвовать АНП, СДПА и НЕОС. Однако партиям не удалось договориться. Представители НЕОС заявили о своем выходе из коалиции. Камнем преткновения стали вопросы экономики и социальной политики. В связи с этим АНП начала переговоры с АПС. Однако Австрия, как и Германия, оказалась не готова к тому, что правые силы могут встать во главе страны. При этом на местном уровне АПС возглавляет правительства, например, в Штирии.
Новая правящая коалиция Австрии вернулась к изначальному формату: АНП, СДПА и НЕОС. Данная коалиции станет первой трехпартийной коалицией в истории Австрии. Стоит отметить, что партиями движут разные интересы и подходы. Это уже осложнило процесс формирования правительства. Окажется ли опыт австрийской трехпартийной коалиции более удачным, чем результаты их немецких предшественников, покажет время.
Вместе с тем еще сохраняется дискуссия о министерских постах. Как будут распределены должности, остается невыясненным. Однако предусмотрено по шесть портфелей для АНП и СДПА и два - для НЕОС. Кроме того, вероятно, будет семь государственных секретарей.
#Österreich#Wahlen#ÖVP#SPÖ#Neos
https://www.derstandard.at