Всем привет!
Работаю с библиотекой ExtJS версии 4.
У меня возник вопрос по утечкам памяти. 100% Уверенности в том, что течет именно ExtJS у меня нет. Я использую профилировщик от хрома и вижу несколько detached деревьев размером по 2000-3000 элементов, но суммарный размер retained size всех деревьев не превышает и 10 мегабайт, однако открыв диспетчер задач, я вижу, что хром отожрал уже несколько сотен мегабайт и уменьшения объема со временем не происходит.
Элементы из этих деревьев ссылаются в конечном счете на сущности Ext: ComponentManager, WindowManager, Cache. Это приводит меня к выводу, что течет ExtJS. Происходит ли это из-за внутренностей ExtJS или его неправильного использования я пока сказать не могу.
С другой стороны, когда я делаю тестовые примерчики для создания утечек и добавляю тяжеловесные свойства к DOM элементу, к примеру, new Array(100000).join('test'), то я вижу, что размер retained size детаченого дерева в профилировщике примерно равен памяти процесса браузера.
Отсюда у меня вопрос, если считать, что утечки ExtJS ведут к отжиранию памяти, то почему я не вижу, что размер дерева равен количеству памяти у процесса?
Возможно, в процессе дискуссии вопрос будет переформулирован по-другому, но пока вопрос такой