Sobes.tech
Junior — Middle
96

Можете ли да објасните како је реализован рад асинхроних функција коришћењем кључних речи async и await у Python-у?

Компаније где су питане
Effective Mobile

Одговор од АИ

sobes.tech АИ

В 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".