Встречается на собеседованиях • сегодня
Зачем нужен GIL
GIL (Global Interpreter Lock) позволяет только одному потоку выполнять Python-байткод в данный период времени
Зачем он нужен?
Безопасность:
Без GIL доступ к объектам из нескольких потоков мог бы привести к ошибкам при подсчете ссылок, тем самым привести к утечке памяти и падению программы.
Простота и стабильность:
Без GIL каждая операция с объектами требовала бы явных блокировок (mutex), тем самым замедлила бы даже однопоточные программы.
Производительность:
GIL позволяет работать однопоточным программам быстрее, чем если бы при каждом доступе к объекту была проверка на блокировку.
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы
