Встречается на собеседованиях • сегодня
Вычислительную операцию лучше делать на нескольких процессах или на нескольких потоках
Выбор между процессами и потоками зависит от типа задачи:
Для CPU-bound задач (вычисления, обработка данных):
Лучше использовать процессы (multiprocessing), так как они обходят GIL и используют несколько ядер CPU.
Пример:
python
from multiprocessing import Pool
def square(x):
return x * x
with Pool(4) as p:
result = p.map(square, range(1000))
text
**Для I/O-bound задач (сеть, файлы, БД):**
Подойдут потоки (`threading`), так как они легковесны и эффективны при ожидании.
Пример:
```python
from threading import Thread
import requests
def fetch(url):
response = requests.get(url)
print(response.status_code)
threads = [Thread(target=fetch, args=(url,)) for url in urls]
for t in threads: t.start()
for t in threads: t.join()Ключевые различия:
- Процессы изолированы (нет общего состояния), потоки разделяют память.
- Процессы дороже создавать, потоки — дешевле.
- GIL ограничивает потоки в CPU-bound задачах.

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