Встречается на собеседованиях • сегодня

Для больших вычислений лучше использовать потоки или процессы

Для CPU-bound задач (интенсивные вычисления) лучше использовать процессы (multiprocessing), так как они избегают GIL (Global Interpreter Lock) и работают параллельно на разных ядрах CPU.

Для I/O-bound задач (ожидание сети/диска) подойдут потоки (threading), так как они легковеснее и эффективнее при ожидании.

Пример для процессов:

python
from multiprocessing import Pool

def compute(x):
    return x * x

with Pool(4) as p:
    print(p.map(compute, range(10)))

Пример для потоков:

python
import threading

def fetch(url):
    # имитация I/O операции
    print(f"Fetching {url}")

threads = [threading.Thread(target=fetch, args=(url,)) for url in urls]
for t in threads: t.start()
for t in threads: t.join()

Выбор зависит от типа задачи: процессы для CPU, потоки для I/O.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы