Что за функция gather()

Функция asyncio.gather(*coros) - одновременно запускает все awaitable-объекты, переданные как последовательность, и передает для запуска в цикле событий.

Функция asyncio.gather() является awaitable-объектом и запускается с оператором await. Если вы передаете функции gather() сопрограмму, то она будет автоматически назначена как задача.

import asyncio
import random


async def two(x):
    await asyncio.sleep(random.randint(1, 3))
    return print(x)


async def one(x):
    await asyncio.sleep(random.randint(1, 3))
    return print(x)


async def main():
    for x in range(5):
        await asyncio.gather(one(1), two(2))


asyncio.run(main())

 

Oct. 12, 2023, Источник

Примеры ответов: