В моем приложении есть визуальный компонент GraphViewer.Каждый раз, когда пользователь меняет графики, создается новая программа просмотра, а старая удаляется со сцены и удаляется.И все же память, похоже, протекает.Когда я использую профилировщик Flex для слежения за маятниковыми объектами, это показывает, что экземпляры GraphViewer действительно просачиваются, но когда я проверяю ссылки на объекты любопытных зрителей, я вижу, что все они (кроме одного) имеют 0 путей к корню GC.
Я делаю снимок памяти после GC, а затем меняю график (создаю новое средство просмотра) N раз.Затем я делаю GC, делаю еще один снимок и смотрю на бесполезные объекты.Я вижу, что N объектов GraphViewer слоняются, но N-1 из них на самом деле имеет 0 путей, и только у одного есть что-то, что фактически ссылается на него.
Почему профилировщик Flex показывает объекты как торчащие, когда они не могут быть получены из корня GC?Надежен ли профилировщик Flex?