Приведи пример написания асинхронного кода
Python
Middle
Без компании
Приведи пример написания асинхронного кода
Ответы
В Python асинхронный код пишется с использованием ключевых слов `async` и `await`, а также библиотеки `asyncio`. Основные компоненты:
- `async def` - объявление асинхронной функции
- `await` - ожидание выполнения корутины
- `asyncio.run()` - запуск event loop
Пример простого асинхронного кода:
```
import asyncio
async def fetch_data():
print("Начинаем загрузку данных...")
await asyncio.sleep(2) # Имитация долгой операции
print("Данные загружены")
return {"data": 123}
async def main():
task = asyncio.create_task(fetch_data())
print("Делаем что-то другое...")
await task # Ожидаем завершения задачи
print(f"Результат: {task.result()}")
asyncio.run(main())
```
Ключевые моменты:
- `asyncio.sleep()` используется вместо `time.sleep()` в асинхронном коде
- `create_task()` запускает корутину в фоновом режиме
- Все асинхронные вызовы должны быть внутри `async` функций
- `await` передает управление обратно в event loop