gpt4 book ai didi

flash - Flash/as3中有哪些好的内存管理技巧

转载 作者:行者123 更新时间:2023-12-03 16:34:28 37 4
gpt4 key购买 nike

所以我非常熟悉 Java、C 和 C++ 中的内存管理;然而,在闪存中有哪些结构用于内存管理?我假设 flash 有一种像 java 的虚拟机,并且我一直假设当它们被设置为 null 时会被垃圾收集。我不确定是否确实如此。还有一种方法可以强制在 Flash 中进行垃圾回收吗?还有其他提示吗?

谢谢

最佳答案

Flash 字节码由 AVM(Actionscript 虚拟机)运行。一般而言(并且不是 Java 或 Flash Player 内部专家),我认为可以肯定地说 AVM 模型有点类似于 JVM 模型(源代码被编译为字节码,由VM;至少在 AVM 中,其中一些被解释,一些在执行前被 JIT 编译为 native 代码,等等)。

正如您所说,AVM 是垃圾收集器,因此基本上内存分配和释放由 GC 为您管理。当一个对象变得不可访问时,它就有资格进行 GC(这并不意味着它会立即被收集)。

有一种强制 GC 循环的方法,仅在播放器的调试版本中可用,还有一种 hack,非官方且未记录,但您可以在 google 中找到一些关于它的链接(尝试 GC hack flash LocalConnection 或其他东西那些线)。强制 GC 几乎总是一个坏主意。

我最近看到这篇博文,它解释了 GC 在某些方面的工作原理,并引用了 AVM C++ 源代码(播放器的那部分是开源的,因此您可以查看它以获得更深入的了解如果您愿意,请提供信息)。 http://jpauclair.net/2009/12/23/tamarin-part-iii-current-garbage-collector-in-flash-10-0/

关于flash - Flash/as3中有哪些好的内存管理技巧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2597003/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com