首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内存管理AS3

内存管理AS3
EN

Stack Overflow用户
提问于 2010-07-03 15:36:41
回答 2查看 196关注 0票数 0

通过将自定义对象添加到stage,我的AS3应用程序基本上执行了以下3到4次操作(来自主应用程序类的伪代码):

代码语言:javascript
复制
_movieClipClassVariable = new MyCustomSpriteSubclass();     
_movieClipClassVariable.addEventListener(MyEvents.READY, function(event:Event):void {
            _hideLoading();
            mcHolder.addChild(_movieClipClassVariable);                               
        });                     

_movieClipClassVariable.addEventListener(MouseEvent.CLICK, myClickHandler); 


private function coverClickHandler(event:Event):void
{           
    ...
}

允许垃圾收集器在不必要的情况下回收_movieClipClassVariable的正确方法是什么?是否将null分配给它?是否删除所有侦听器?是否对侦听器使用弱引用?

提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-03 16:13:28

为了使用垃圾收集器,您应该考虑:

  1. 未定义X.addEventListener()内的处理程序方法调用
  2. 删除要从内存中释放的对象上的所有事件侦听器
  3. 使该对象为空4.(可选)您可以强制垃圾回收器调用null
票数 0
EN

Stack Overflow用户

发布于 2010-07-03 16:02:30

我要说的是以上所有的。

我推荐阅读Grant Skinners articles of Resource Management。还可以看看他的slides from his Resource management talk

关于这个主题有相当多的信息,这两个链接是我找到的最好的资源。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3170708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档