代码之家  ›  专栏  ›  技术社区  ›  Moshe

Actionscript内存管理?

  •  4
  • Moshe  · 技术社区  · 14 年前

    我看到了 System.gc() 今天在网上的某个地方,我想知道它是否被推荐用于Flash CS5项目,以及为什么。

    3 回复  |  直到 14 年前
        1
  •  4
  •   I. J. Kennedy ShankarSangoli    14 年前

    在我所知道的每一个垃圾收集系统中,垃圾收集机器都是作为抽象在后台运行的,程序员在理论上不应该注意这个抽象。在某些特殊情况下,强制收集是有用的,但这些情况通常涉及中断(真正的机器中断,而不是actionscript事件)、测试/调试场景或一些棘手的延迟管理必需品。很可能您永远不需要调用System.gc(),您可以安全地忽略它。

        2
  •  0
  •   Cay    14 年前

    gc()只在Flash Player的调试器版本和一些AIR应用程序中可用。在一个普通的网站上调用它,在一个普通的Flash播放器下不会有任何效果,并且会默默地失败。

    gc()仅用于测试目的。

        3
  •  0
  •   Joony s3rro    14 年前

    gc()仅用于测试目的。监视应用程序正在使用的内存使用情况并调用System.gc()可以很方便地突出显示任何内存泄漏的可能性。

    提示:据我所知,必须调用System.gc()两次才能强制它立即收集。

    文档说明此方法仅在调试播放机中工作。

    http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/system/System.html#gc()

    所以,总结一下,如果你在测试内存,它是非常方便的,否则不要使用它。