【发布时间】:2009-03-16 03:35:06
【问题描述】:
如何确定 AVM1 的 Mozilla Flash 插件内存中的当前内容?我正在尝试调试我们构建的大型应用程序,需要查看收集垃圾的内容和时间。我认为我们有许多引用导致主要内容节点在用户会话期间不卸载。现在都是猜测。
【问题讨论】:
标签: flash actionscript npapi
如何确定 AVM1 的 Mozilla Flash 插件内存中的当前内容?我正在尝试调试我们构建的大型应用程序,需要查看收集垃圾的内容和时间。我认为我们有许多引用导致主要内容节点在用户会话期间不卸载。现在都是猜测。
【问题讨论】:
标签: flash actionscript npapi
即使您在 Firefox 中有一个分析器,这也是猜测,因为垃圾收集器在 AVM1 中“有点”忙碌。如果内存使用量突然达到峰值,它会进行收集,当然您设法删除了对对象的所有引用。对我有用的是: 1.删除所有监听器 2.对象=空 3. 删除对象
但无论如何,您应该花时间优化您的代码,并确保您不会留下流氓侦听器(或使用 Delegate 传递范围内的方法引用,肮脏但有效),而不是试图找到一种精确监控内存的方法.如果您确实需要,请使用基于操作系统的操作系统并检查 Firefox 进程,或者将您的项目暂时切换到 Flash Lite 并使用 Device Central。
【讨论】:
t think theres 是一个简单的方法,一旦你有了想法你可以使用像osflash.org/xray 这样的调试工具,但在一天结束时你最终还是会查看代码..