@zlodiak

Правильно ли так очищать память?

Есть некоторый класс:
class ImgRecognizer:
    def __init__(self):
        self.driver.start()

    def __del__(self):
        self.driver.close()
        class_name = self.__class__.__name__
        print (class_name, "destroyed")


он используется приблизительно так:
img_recognizer = ImgRecognizer()
....
....
...
del img_recognizer
nums = None


Скажите пожалуйста, правильно ли я использовал
nums = None
?

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

Правильно ли я поступил или это лишнее?
  • Вопрос задан
  • 161 просмотр
Решения вопроса 1
@deliro
Зачем вычищать память, если с этим сборщик мусора справляется? Думаешь, ты умнее него?
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
kagary06
@kagary06
Человек
  • Если нужно удалить переменную любого типа del variable
  • Если нужно очистить память, но при этом переменная продолжит существовать variable = None
  • Если нужно очистить память для списка/кортежа/множества, но при этом не изменять тип variable.clear()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы