FLASH内存优化13条
发布时间:2020-12-15 06:54:28 所属栏目:百科 来源:网络整理
导读:?1. 使用合适的显示对象,对于非 交互 的简单形状用Shape对象,对于不需要时间轴的交互式对象用Sprite,对于使用时间轴的 动画 用MovieClip,他们的内存使用量分别是236,412,440,可见shape很省内存 2. Number原始存储内存占8个字节,int,uint,Boolean,String均
?1. 使用合适的显示对象,对于非
交互的简单形状用Shape对象,对于不需要时间轴的交互式对象用Sprite,对于使用时间轴的
动画用MovieClip,他们的内存使用量分别是236,412,440,可见shape很省内存
2. Number原始存储内存占8个字节,int,uint,Boolean,String均占4个字节,关于赋值后作占内存,取决值赋的值 3. 对象的重复利用,在FOR循环内new对象要小心,每次new都会增大内存。 4. 通过重复使用 BitmapData 对象可以节省更多的内存,即不同的bitmap公用一个bitmapdata 5. 重复使用相同对象的时候,可以考虑下对象池的 应用 6. 垃圾回收运行时会不断检测出处于非活动状态的对象,大型项目中此进程会占用大量CPU,所以尽量重使用对象,不用的对象设置为NULL 7. 内存释放方面,为了确保被垃圾回收,首先保证该对象没有其他引用,然后移除监听,在然后设置为NULL。关于bitmapdata,先用dispose 在设置为null 8. 在 Flash Player 10.1 中,对所有bitmapdata实例采用同一版本的bitmapdata,大大节省了内存,当bitmapdata 数据发生变化的时候,内存中会建立一个新的bitmapdata实例 9. 尽量避免使用滤镜,当对显示对象使用滤镜的时候,内存中将创建两个位图,每个位图的大小都与显示对象相同。一个是显示对象的栅格化版本,一个是用于滤镜的位图 10. 当修改滤镜的属性的时候,内存中两个位图都将更新创建新的位图,会消耗一些CPU,并且会占用大量内存。 11. Flash Player 10.1 在所有平台上引入了一种新的过滤行为。如果滤镜在 30 秒内没有进行修改,或者将其隐藏或置于屏幕之外,将释放未过滤的位图占用的内存。该方式成为动态位图卸载。 12. 使用滤镜时仍要谨慎小心;在对它们进行修改时,仍要求大量 CPU 或 GPU 处理。 13. 如果想要滤镜 效果,最好用PHOTOSHOP来做一个 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- MongoDB数据文件内部结构
- WebGIS(PostgreSQL+GeoServer+OpenLayers)之一 PostgreSQL安
- ruby-on-rails – 为什么Heroku不会在Windows中接受我的Gem
- C#/ EmguCV – 将上传的HttpPostedFileBase转换为Emgu.CV.M
- 正则表达式30分钟入门教程(第二版)
- ruby-on-rails – 博客平台的推荐URL格式
- Using the Dojo JavaScript Library to Build Ajax Applica
- flash 遮罩层全解
- iphone – 用于比较Xcode项目文件的工具
- xml – 使用xsl变量捕获调用模板的输出,为我返回空白