Skip to content

Latest commit

 

History

History
10 lines (6 loc) · 1.61 KB

File metadata and controls

10 lines (6 loc) · 1.61 KB

GIL - Глобальная блокировка интерпретатором. Для чего она нужна? Все довольно логично - во избежании состояния гонки. В питоне есть такая очень нужная и удобная штука как сборщик мусора, который как раз и может "сломаться" если бы GIL не существовало

[!info] Сборщик мусора - это Так как в питоне все является объектами, то сборщик мусора в каждом таком объекте хранит счетчик ссылок - тоесть количество объектов, ссылающихся на этот объект. Как только счетчик ссылок зануляется - объект удаляется из памяти

Подробнее про сборщик мусора - [[Python. Сборщик мусора]]

Также есть такое понятие как "освобождение" GIL. GIL освобождается только для I/O задач. Для чего? - все просто, при операциях ввода-вывода может произойти ситуация, когда у нас долго простаивает какой-либо из процессов, отсюда мы можем отдать управление GIL другому процессу, на время простоя первого

[[Python]] [[IT]]