Встречается на 1% собеседований по Python
Будешь ли делать асинхронной CPU-bound задачу
Нет, асинхронность в Python не ускоряет CPU-bound задачи, так как asyncio работает в одном потоке и предназначен для I/O-bound операций. Для CPU-bound задач лучше использовать многопроцессорность (multiprocessing) или вычислительные библиотеки типа NumPy.
Пример:
python
import multiprocessing
def cpu_intensive_task(n):
return sum(i*i for i in range(n))
if __name__ == '__main__':
with multiprocessing.Pool() as pool:
results = pool.map(cpu_intensive_task, [10_000_000, 20_000_000])Асинхронный вариант здесь не даст преимущества, так как GIL блокирует выполнение. Для истинного параллелизма CPU-bound задач нужны процессы, а не корутины.

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