我的应用程序创建了一个带有几个分组的窗口。当窗口关闭时,窗口及其子元素不会被 GC 回收。
Flash Builder Profiler 帮助我找到并删除事件侦听器,但在事件侦听器添加自 Window.as
库代码后,我已经无法发现问题所在。
具体来说,在窗口打开前和关闭后比较悬空对象,并选择 MyWin
类(1 个实例):
MyPackageName.MyWin(10 条路径)
10 倍下面这行:
Function [savedThis] 569222 GCRoot:Yes bytes:308
单击方法面板中的每个“Function”,我会看到以下 10 个内容位于每个“Function”的顶部:
spark.components:Window:creationCompleteHandler() Window.as line 2610
spark.components:Window:creationCompleteHandler() Window.as line 2613
spark.components:Window:creationCompleteHandler() Window.as line 2616
spark.components:Window:creationCompleteHandler() Window.as line 2619
spark.components:Window:creationCompleteHandler() Window.as line 2625
spark.components:Window:creationCompleteHandler() Window.as line 2639
spark.components:Window:creationCompleteHandler() Window.as line 2636
Spark.components.supportClasses:SkinnableComponent:attachSkin() SkinnableComponent.as line 694
Spark.components:SkinnableContainer:partAdded() SkinnableContainter.as line 959
Spark.components:SkinnableContainer:partAdded() SkinnableContainter.as line 957
所有这些都是以某种方式从MyWin.initialize()中调用的。
我已经删除了代码创建的每个事件监听器,并删除了所有过渡效果,但仍然无法弄清楚它的含义以及如何处理窗口。任何帮助都将不胜感激,因为我已经苦苦挣扎了几天。