Sobes.tech
Junior — Middle

El tudná magyarázni, hogyan valósul meg az aszinkron függvények működése az async és await kulcsszavak használatával Pythonban?

sobes.tech MI

Válasz az MI-től

В Python ключевые слова async и await используются для определения и работы с асинхронными функциями, которые позволяют выполнять операции ввода-вывода или другие длительные задачи без блокировки основного потока.

  • async def объявляет функцию как асинхронную, которая возвращает корутину.
  • await используется внутри асинхронной функции для приостановки её выполнения до завершения другой корутины или асинхронной операции.

Это позволяет эффективно управлять временем ожидания, например, при сетевых запросах, не блокируя выполнение других задач.

Пример:

import asyncio

async def say_hello():
    print("Hello")
    await asyncio.sleep(1)  # имитация асинхронной задержки
    print("World")

async def main():
    await say_hello()

asyncio.run(main())

В этом примере say_hello — асинхронная функция, которая сначала выводит "Hello", затем ждёт 1 секунду, не блокируя поток, и выводит "World".