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

Что такое изоляция

Изоляция в Python (GIL — Global Interpreter Lock) — это механизм, который позволяет выполняться только одному потоку кода в один момент времени, даже на многоядерных процессорах. Это ограничение связано с тем, что управление памятью в CPython не является потокобезопасным.

Пример:

python
import threading

def count():
    n = 0
    for _ in range(1_000_000):
        n += 1

threads = [threading.Thread(target=count) for _ in range(4)]
for t in threads:
    t.start()
for t in threads:
    t.join()

Несмотря на 4 потока, из-за GIL они не выполнятся быстрее, чем один.

Обход: Для параллелизма используют multiprocessing или асинхронность (asyncio).

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

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

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

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