博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
as CPU 优化【转】
阅读量:7015 次
发布时间:2019-06-28

本文共 1125 字,大约阅读时间需要 3 分钟。

FLASH平台优化的学习笔记,总结出一条一条总比看长篇大套的好,欢迎补充和指正!我会继续努力抽时间写一些读书笔记到个人博客9stg.com和天地会,欢迎大家交流!共同进步!

1.       FLASH PLAYER10.1 引入了两种减少CPU处理的功能,一个是睡眠模式,另一个是SWF内容位于屏幕之外是暂停和恢复该内容
2.       睡眠模式是暂停呈现并将Stage.frameRate设置成4fps, 之所以不是0,是让所有连接保持打开状态(NetStream, Socket和NetConnection)。之所以是4,是因为许多电话制造商采用此帧速率作为刷新率
3.       暂停和恢复,当内容位置屏幕之外时候(全部内容在屏幕之外),暂停SWF文件,位于屏幕之内时候恢复SWF,从而限制CPU使用量。
4.       导致SWF位于屏幕之外的两种情况是,第一,滚动页面,第二,在浏览器中切换到新的标签。前者hasPriority HTML 参数设置为 true的时候ActionScript 的执行不会被暂停,后者无论是设为TRUE和 FALSE SWF都会降低到2FPS。关于呈现,两种情况下都会被暂停。
5.       显示对象的冻结与解冻,对于显示对象一定要使用 REMOVED_FROM_STAGE 和 ADDED_TO_STAGE 事件进行冻结和解冻。意思是将显示对象从显示列表中移除的时候,其事件一定要移除。不移除则将继续执行事件,如ENTER_FRAME,这将会消耗 CPU,影响效率。
6.       自动冻结,FLASH PLAYER10以及更高版本中,当遇到空帧的时候,自动执行冻结,无需手动remove监听
7.       Loader的冻结,flash player 9采用unload就行冻结,flash player10引入了一个新的方法unloadAndStop()进行冻结,该方法会卸载SWF文件,自动冻结SWF中的每个显示对象并强制运行垃圾回收。
8.       关于MovieClip和Sprite的鼠标事件,当不需要鼠标事件的时候将mouseEnabled和mouseChildren设为false. 不断的检测鼠标交互事件会消耗CPU,尤其是大量交互对象重叠的情况。
9.       对于执行时间太长的非动画内容,优先选择计时器,而不是 Event.ENTER_FRAME 事件。
10.   在 enterFrame 事件或 Timer 处理函数中,尽量减少对可导致重绘屏幕的显示对象外观的更改。
11.   尽量减少补间动画,以节省更多的CPU处理

转载于:https://www.cnblogs.com/xinqingHappy/archive/2013/04/02/2994612.html

你可能感兴趣的文章
分页技术
查看>>
mysql 配置安装
查看>>
windows服务的默认启动类型和登录帐户
查看>>
java合并两个升序数组为一个新的有序数组
查看>>
Lesson 1#10 流程控制
查看>>
(二)从分布式一致性谈到CAP理论、BASE理论
查看>>
设计模式【15】| 迭代子模式
查看>>
linux系统性能监控--网络利用率
查看>>
cocos2d-x 使用UIWebView加载网页(顺便可以看到如何用OC调C++)
查看>>
飞凌百套OK335xS-2开发平台免费申请
查看>>
数据库系统原理,很赞的课程!
查看>>
iis站点内存泄漏问题分析
查看>>
win10 HTTP 错误 500.21 - Internal Server Error
查看>>
如何创建Vue3.0项目
查看>>
MongoDB 启动基于角色的登录认证功能
查看>>
数据库原理整理笔记1
查看>>
如果选错云服务商,后果很严重……
查看>>
c#备份MySQL数据库 --转载
查看>>
HDU - 1247 Hat’s Words 字典树
查看>>
从client(content="<p></p>")中检測到有潜在危急的 Request.Form 值。
查看>>