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

Какая проблема потоков в Python

Основная проблема потоков (threads) в Python — это Global Interpreter Lock (GIL), который позволяет выполняться только одному потоку за раз, даже на многоядерных процессорах. Это делает потоки неэффективными для CPU-задач, но они всё ещё полезны для I/O-операций.

Пример:

python
import threading

def cpu_bound_task():
    sum(range(10**7))  # CPU-bound операция

# Создаём 2 потока
t1 = threading.Thread(target=cpu_bound_task)
t2 = threading.Thread(target=cpu_bound_task)

t1.start()
t2.start()
t1.join()
t2.join()

В этом случае потоки выполнятся последовательно из-за GIL. Для CPU-задач лучше использовать multiprocessing.

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

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

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

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