Python управляет временем жизни объектов автоматически; конкретный механизм зависит от реализации. В CPython подсчёт ссылок дополняется сборщиком циклических ссылок и внутренними аллокаторами памяти.
Как Python управляет памятью?
Python управляет временем жизни объектов автоматически; конкретный механизм зависит от реализации. В CPython подсчёт ссылок дополняется сборщиком циклических ссылок и внутренними аллокаторами памяти.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Python управляет временем жизни объектов автоматически; конкретный механизм зависит от реализации. В CPython подсчёт ссылок дополняется сборщиком циклических ссылок и внутренними аллокаторами памяти.
Освобождение ссылки не обязательно сразу уменьшает память процесса: объекты могут оставаться достижимыми, а allocator — удерживать свободные блоки. Циклический GC работает с отслеживаемыми контейнерами. Для файлов и соединений используйте явное закрытие или with: полагаться только на момент сборки мусора нельзя. PyPy и другие реализации могут управлять памятью иначе.