Sobes.tech
Junior — Middle

Сіз Python-да async және await кілт сөздерін пайдалана отырып, асинхронды функциялардың қалай жұмыс істейтінін түсіндіре аласыз ба?

sobes.tech AI

AI-дан жауап

Python-да async және await кілттік сөздері асинхронды функцияларды анықтау және онымен жұмыс істеу үшін қолданылады, олар негізгі ағынды блоктамай, енгізу-шығару операцияларын немесе басқа ұзақ уақытты тапсырмаларды орындауға мүмкіндік береді.

  • async def функцияны асинхронды деп жариялайды, ол корутинаны қайтару.
  • await асинхронды функция ішінде қолданылады және басқа корутинаны немесе асинхронды операцияны аяқтау үшін оның орындалуын тоқтатады.

Бұл тиімді уақытты басқаруға мүмкіндік береді, мысалы, желілік сұраулар кезінде, басқа тапсырмалардың орындалуын тоқтатпай.

Мысал:

import asyncio

async def say_hello():
    print("Сәлем")
    await asyncio.sleep(1)  # асинхронды кідіріс имитациясы
    print("Әлем")

async def main():
    await say_hello()

asyncio.run(main())

Бұл мысалда say_hello — асинхронды функция, ол алдымен "Сәлем" деп шығарады, содан кейін 1 секунд күтеді, блоктамай, және "Әлем" деп шығарады.