#flutter #memory #memory-management #memory-leaks
#порхание #память #управление памятью #утечки памяти
Вопрос:
У меня некоторые проблемы с пониманием представления flutter memory. Изучая снимок памяти моего приложения, я вижу, что существует слишком много экземпляров некоторых виджетов.
Например, CollectionScreen. Я ожидаю увидеть только один, это указывает на утечку. Но количество для каждого экземпляра = 0. Что это значит?
Глядя справа, у меня есть только 2 значения, одно из которых — ValueNotifier, а другое — класс «data». Оба не должны содержать ссылки на сам виджет или что-либо еще.
В представлении Android memory View я всегда мог проверить, на какие объекты также содержатся ссылки в просочившихся экземплярах, а затем изучить эти объекты, чтобы увидеть, какие ссылки на них также содержатся. Как я могу сделать то же самое с Flutter?
Кроме того, возвращаясь к утечке, коллекция была передана в качестве параметра на CollectionScreen, когда я ее создавал. Должен ли я каким-либо образом обнулять ссылку при уничтожении виджета, чтобы избежать утечки? Что удерживает мой CollectionScreen в памяти?