as3的flash运行器中新增了垃圾回收的机制,即自动从内存中清除一些不可访问的对象。这个过程我们是无法控制的,不过可以通过一个例子来观察这个过程:
package
{
import flash.display.Sprite;
import flash.text.TextField;
import flash.utils.Timer;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.system.System;
public class GarbageCollection extends Sprite{
public function GarbageCollection(){
vars:Sprite=newSprite;
s.graphics.beginFill(0,1);
s.graphics.drawRect(0,0,100,100);
//addChild(s);
s.addEventListener(Event.ENTER_FRAME,enterframelistener);
vartimer:Timer=newTimer(1);
timer.addEventListener(TimerEvent.TIMER,timelistener);
timer.start();
}
privatefunctiontimelistener(e:TimerEvent):void{
newTextField();
}
privatefunctionenterframelistener(e:Event):void{
trace('FlashPlayer当前所用内存(字节):',System.totalMemory);
}
}
}
当输出窗口停止输出信息时就意味着在构造方法中创建的局部变量s被当成垃圾给回收了。
如果将addChild(s)取消注释,s就会被放到场景中,从而不被回收。系统转而回收timelistener里创建的n多没用的newTextField,可以看到:
…省略…
FlashPlayer当前所用内存:3403776字节
FlashPlayer当前所用内存:3407872字节
FlashPlayer当前所用内存:3420160字节
FlashPlayer当前所用内存:2142208字节
FlashPlayer当前所用内存:2146304字节
…省略…
很明显可以看到垃圾回收的过程。
- 大小: 192.2 KB
- 大小: 94 KB
分享到:
相关推荐
9. **其他高级特性**:如垃圾回收机制、类型转换、包结构、访问修饰符等,这些都是ActionScript 3.0中的重要特性,对于编写高效、可维护的代码至关重要。 在"ActionScript 3.0.chm"文件中,你可以通过索引或搜索...
合理地管理对象生命周期,避免不必要的计算,以及利用垃圾回收机制,都能提高游戏的运行效率。 通过学习和理解这个ActionScript3.0版的贪吃蛇游戏,开发者不仅可以掌握基本的游戏开发技能,还能深入理解...
- **垃圾回收机制**:理解内存管理,避免内存泄漏。 - **代码优化技巧**:减少不必要的计算,优化循环结构,提高程序运行效率。 总之,《ActionScript 3.0入门基础》教程将引导你逐步了解和掌握这个强大的编程...
9. **性能优化**:提供关于提高ActionScript 3.0程序性能的技巧和最佳实践,包括垃圾回收、内存管理和代码优化。 10. **组件开发**:介绍如何创建自定义组件,以及如何利用Flex SDK或Spark组件模型来扩展应用功能。...
13. 性能优化:AS3.0的垃圾回收机制和优化编译器提高了运行效率,使得编写高性能应用成为可能。 这个中文版的API文档还涵盖了ActionScript3.0的其他关键概念,如包、命名空间、访问修饰符、构造函数、静态成员,...
10. **性能优化**:了解AS3.0的内存管理机制,如垃圾回收,以及如何减少不必要的计算和绘制,能提升应用的性能。 这个自学手册例子很可能会包含以上这些知识点的实践示例,通过逐步学习和动手实践,你可以全面掌握...
11. **性能优化**:AS3.0相比AS2.0有显著的性能提升,但仍然需要注意内存管理和垃圾回收,避免不必要的对象创建和引用。 12. **动画和时间轴控制**:尽管AS3.0更强调代码驱动的动画,但仍然可以通过时间轴控制实现...
此外,AS3还引入了垃圾回收机制,自动管理内存,减轻了开发者的工作负担。 “Cookbook”通常包含许多实际问题的解决方案,这些方案可能包括以下知识点: 1. 类和对象:如何定义和使用自定义类,包括继承、封装和...
新的垃圾回收机制和更高效的内存管理策略,使得ActionScript 3.0应用程序能够处理更大量的数据和更复杂的计算任务。 #### 3. 事件处理模型 ActionScript 3.0引入了一种更灵活的事件处理模型,允许开发者更细粒度地...
10. **优化技巧**:学习如何编写高效代码,减少不必要的计算,优化内存使用,以及如何利用垃圾回收机制。 通过《ActionScript 3.0开发技术大全》这份资源,开发者可以从零开始,逐步深入学习ActionScript 3.0,掌握...
AS3提供了许多优化技巧,例如使用位运算而非常规运算,减少不必要的计算,以及利用垃圾回收机制来管理内存。 通过深入学习这些知识点,并结合提供的源文件进行实践,你可以逐步成为一名熟练的ActionScript 3.0...
ActionScript3.0是Flash Professional的重要组成部分,它是一种面向对象的编程语言,基于ECMAScript规范,具备了类型检查和垃圾回收等特性,使得代码更加严谨且运行效率提高。在打字游戏中,ActionScript3.0用于控制...
避免在循环中创建大量组件,合理使用垃圾回收机制,以及正确处理组件的生命周期,都能有效提升应用的运行效率。 综上所述,ActionScript 3.0组件是构建富互联网应用程序的重要工具。通过熟练掌握组件的使用,开发者...
10. **性能优化**:提供ActionScript3.0性能优化技巧,包括代码优化、内存管理、垃圾回收等,以提高应用程序的运行效率。 11. **实战项目**:通过实际的案例,如游戏开发、交互设计等,将所学知识应用到实践中,...
11. **性能优化**:理解垃圾回收机制,合理使用显式垃圾回收,以及避免不必要的计算和内存分配,都能提升AS3应用的性能。 12. **调试与测试**:使用Flash Professional或Flash Builder的内置调试工具,以及独立的...
- **内存管理**:提供了垃圾回收机制,自动管理对象的生命周期,简化了内存管理。 - **性能优化**:采用了新的虚拟机,显著提高了执行速度和内存效率。 #### Flash Player API功能 - **多媒体处理**:支持音频、...
- **性能优化**:通过改进的垃圾回收机制等技术提高运行效率。 - **Flash Player API功能**: - **多媒体处理**:增强了对音频和视频的支持,使得处理多媒体内容变得更加简单。 - **网络通信**:提供了强大的网络...
9. **性能优化**:理解ActionScript3.0的垃圾回收机制,以及如何编写高效的代码,减少内存占用和提升运行速度。 10. **Flex框架**:如果书中涉及,还会介绍使用Flex SDK创建Flex应用程序的基本原理和实践。 此外,...