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

Какие плюсы и минусы сборщика мусора (Garbage collector) в Python

Плюсы:

  • Автоматическое управление памятью — разработчику не нужно вручную освобождать память.
  • Уменьшает риск утечек памяти и ошибок, связанных с ручным управлением (например, free в C).
  • Интеграция с CPython — работает "из коробки" без дополнительной настройки.

Минусы:

  • Недетерминированность — момент сборки мусора сложно предсказать, что может вызывать задержки.
  • Накладные расходы — GC потребляет CPU-ресурсы, особенно при работе с циклическими ссылками.
  • Ограниченный контроль — в отличие от ручного управления (например, del или weakref).

Пример циклической ссылки:

python
class Node:
    def __init__(self):
        self.ref = None

a = Node()
b = Node()
a.ref = b  # Циклическая ссылка
b.ref = a
# GC должен обработать это вручную (через поколения)

Для оптимизации можно отключать GC (gc.disable()) или использовать weakref для ссылок.

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

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

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

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