Sobes.tech
Junior — Middle

AsyncIO китепканасындагы кайсы ыкма бир убакта бир нече корутинди ишке киргизүү үчүн колдонулат?

sobes.tech AI

AIден жооп

AsyncIO китабханасында бир нече корутинду бир убакта ишке киргизүү үчүн asyncio.gather() функциясы колдонулат. Ал бир нече корутинду кабыл алып, аларды параллелдүү иштетет, жана бардык иши аяктагандан кийин натыйжаны кайтарат.

Колдонуу мисалы:

import asyncio

async def тапшырма(аты, кечиктирүү):
    await asyncio.sleep(кечиктирүү)
    return f'Тапшырма {аты} аяктады'

async def main():
    натыйжалар = await asyncio.gather(
        тапшырма('A', 2),
        тапшырма('B', 1),
        тапшырма('C', 3)
    )
    print(натыйжалар)

asyncio.run(main())

Бул мисалда, үч тапшырма бир убакта башталат, жана asyncio.gather алардын аяктоо күтүп, натыйжаларды тизмеге чогултат.