Sobes.tech
Back to questions
Junior — Middle
79

Каково назначение функции gather в модуле asyncio в Python?

Companies where asked
ИнфоТехСервис
Магнит Тех

Answer from AI

sobes.tech AI

Функция asyncio.gather в Python используется для параллельного запуска нескольких корутин и сбора их результатов. Она принимает несколько awaitable объектов (корутин, задач или фьючерсов) и возвращает один awaitable, который завершится, когда завершатся все переданные задачи. Результатом будет кортеж с результатами всех корутин в том же порядке.

Пример:

import asyncio

async def task(n):
    await asyncio.sleep(n)
    return f"Задача {n} завершена"

async def main():
    results = await asyncio.gather(task(1), task(2), task(3))
    print(results)

asyncio.run(main())

В этом примере три задачи выполняются параллельно, и gather собирает их результаты в список.