Flash 平台技术的优化(一) 运行时代码执行基本原理

本文探讨了Flash平台的运行时代码执行原理,包括帧循环的事件、enterFrame事件和呈现阶段。当应用程序代码占用过多帧时间或呈现复杂内容时,可能导致帧速率下降,影响用户体验。优化关键在于理解和平衡这两个阶段的时间需求。
摘要由CSDN通过智能技术生成

     了解如何改进应用程序性能的关键是了解 Flash 平台运行时如何执行代码。运行时在一个循环中运行,其中某些操作是针对每个“ 帧” 发生的。在这种情况下,帧只是由为应用程序指定的帧速率决定的一段时间。分配给每个帧的时间直接对应于帧速率。例如,如果指定帧速率为 30 帧/ 秒,则运行时会尝试使每个帧的执行时间为三十分之一秒。可以在创作应用程序时指定初始帧速率。可以使用 Adobe® Flash® Builder™ 或 Flash Professional 中的设置来设置帧速率。还可以在代码中指定初始帧速率。可通过对根文档类应用 [SWF(frameRate="24")] 元数据标签,在纯 ActionScript 应用程序中设置帧速率。在 MXML 中,可在 Application 或 WindowedApplication 标签中设置 frameRate 属性。
     每个帧循环包括两个阶段,分为三部分:事件、enterFrame 事件和呈现。第一阶段包括两部分(事件和 enterFrame 事件),这两部分都可能会导致调用代码。在第一阶段的第一部分,发生并调度运行时事件。这些事件可以表示异步操作完成或异步操作的进度,例如来自通过网络加载数据的响应。还包括来自用户输入的事件。调度事件时,运行时在您已注册的侦听器中执行代码。如果没有发生事件,运行时会等待完成此执行阶段,而不会执行任何动作。由于缺少活动,运行时永远不会提高帧速率。如果在执行周期的其他部分发生事件,运行时将这些事件排队并在下一个帧中进行调度。
     第一阶段的第二部分是 enterFrame 事件。此事件与其他事件不同,因为每个帧始终只调度一次该事件。调度所有事件后,帧循环的呈现阶段开始。此时,运行时将计算屏幕上所有可见元素的状态并将其绘制到屏幕上。然后,此进程重复&#x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值