Встречается на собеседованиях • сегодня
Есть ли многопоточность (multithreading) в Python
В Python существует модуль threading, который позволяет работать с потоками, но из-за Global Interpreter Lock (GIL) настоящая параллельность потоков для CPU-задач невозможна. GIL позволяет выполняться только одному потоку за раз, даже на многоядерных системах. Однако для I/O-bound задач (сетевые запросы, чтение файлов) multithreading эффективен, так как потоки освобождают GIL во время ожидания.
Пример:
python
import threading
def worker():
print("Поток работает")
threads = []
for _ in range(5):
t = threading.Thread(target=worker)
threads.append(t)
t.start()
for t in threads:
t.join()Для CPU-bound задач лучше использовать multiprocessing, который создает отдельные процессы с собственным GIL.

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