Команда Python for Devs подготовила перевод статьи о слабых ссылках в Python и управлении памятью. В материале разбирается, как работает подсчёт ссылок, почему циклические зависимости приводят к утечкам памяти и в каких случаях weak references становятся незаменимым инструментом. Читать далее
Модуль weakref позволяет создавать "слабые" ссылки на объекты."Слабой" ссылки не достаточно, чтобы объект оставался "живым": когда на объект ссылаются только "слабые" ссылки, сборщик мусора удаляет объект и использует память для других объектов. Однако, пока объект не удалён, "слабая"…
В Python памятью управляет не только Garbage Collector.На самом деле основа всего — reference counting, а GC лишь помогает собирать циклические ссылки.В этой статье разберём, как на самом деле устроено управление памятью в CPython:— что находится внутри PyObject— как работает ob_refcnt— почему одного reference…
1. Введенние2. Zval3. Циклические ссылки4. Сборщик мусора5. Алгоритм работы сборщика мусора6. Смотрим глазами7. Слабые ссылки8. Бонус-трэк: WeakMap9. Заключение Читать далее