Встречается на собеседованиях • сегодня
Как синхронный код переписать на асинхронный
Основные шаги для перевода синхронного кода в асинхронный:
- Использовать
async/awaitвместо блокирующих вызовов - Заменить стандартные библиотечные вызовы на их асинхронные аналоги (например,
aiohttpвместоrequests) - Использовать
asyncioдля управления event loop'ом
Пример перевода:
python
# Синхронный вариант
import requests
def fetch_data(url):
response = requests.get(url)
return response.json()
# Асинхронный вариант
import aiohttp
async def fetch_data(url):
async with aiohttp.ClientSession() as session:
async with session.get(url) as response:
return await response.json()Ключевые моменты:
- Функции помечаются
async - Блокирующие операции заменяются на
await - Используются асинхронные контекстные менеджеры (
async with) - Для запуска используется
asyncio.run()или event loop
Важно помнить, что не весь код можно/нужно переводить в асинхронный - CPU-bound задачи не выиграют от этого.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы