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

Что такое сборщик мусора (Garbage Collector)

Как происходит управление памятью в python?

В Python управление памятью осуществляется автоматическим образом при помощи сборки мусора и подсчета ссылок.

Подсчет ссылок:

Каждый объект в Python содержит счетчик ссылок, который отслеживает количество ссылок на данный объект. Когда счетчик ссылок объекта опускается до нуля, объект автоматически уничтожается, а память освобождается.

Сборка мусора:

Помимо подсчета ссылок, Python использует алгоритм сборки мусора на основе сборки циклических зависимостей. Это необходимо, так как подсчет ссылок не может обработать циклические ссылочные структуры. Специализированный сборщик циклов периодически проверяет объекты для выявления циклических зависимостей и освобождает память, занимаемую этими объектами.

Поколения:

У сборщика мусора Python есть 3 поколения, по которым классифицируются объекты.

Новый объект попадает в поколение 1. Если объект переживает сборку мусора, он помещает в следующее поколение.

Чем выше поколение, тем реже объект сканируется на сборку мусора - это оптимизация из расчета, что новые объекты чаще освобождаются, чем старые.

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

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

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

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