Встречается на собеседованиях • сегодня
Как определить, что использование асинхронности будет полезно
Асинхронность полезна в I/O-bound задачах, где есть много ожидания (сеть, дисковые операции, API-запросы). Если приложение часто простаивает в ожидании внешних ресурсов, асинхронность позволит эффективнее использовать ресурсы CPU.
Примеры хороших кандидатов:
- Веб-серверы, обрабатывающие много запросов
- Парсинг данных из нескольких источников
- Чтение/запись в базы данных
- Работа с внешними API
Пример кода:
python
import asyncio
import aiohttp
async def fetch(url):
async with aiohttp.ClientSession() as session:
async with session.get(url) as response:
return await response.text()
async def main():
urls = ['url1', 'url2', 'url3']
tasks = [fetch(url) for url in urls]
return await asyncio.gather(*tasks)
asyncio.run(main())Не стоит использовать асинхронность для CPU-bound задач - для них лучше multiprocessing. Также асинхронность добавляет сложности в код, поэтому не применяйте её без необходимости.

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