Как устроены память и Garbage Collector в CPython: разбор для Python backend interview
В Python памятью управляет не только Garbage Collector.
На самом деле основа всего — reference counting, а GC лишь помогает собирать циклические ссылки.
В этой статье разберём, как на самом деле устроено управление памятью в CPython:
— что находится внутри PyObject
— как работает ob_refcnt
— почему одного reference counting недостаточно
— как GC ищет циклический мусор
— какие объекты вообще участвуют в сборке
— и как всё это помогает искать memory leak в production
Если ты готовишься к senior Python интервью или просто хочешь понимать, как Python работает под капотом, — добро пожаловать под капот CPython.
Читать далее