flash Timer 性能优化,每几秒间隔一次
package game.mananger
{
import flash.events.TimerEvent;
import flash.utils.Dictionary;
import flash.utils.Timer; /**
*提供 一个 1秒间隔不断跑的timer,可以注册几秒钟回调,
* 用于提高性能,全局仅有这一个timer
* @author Administrator
*
*/
public class GTimerManager extends BaseManager
{
private var _timer:Timer;
private var _funAry:Array;
public function GTimerManager()
{
if(!_timer)
{
_timer = new Timer();
_timer.addEventListener(TimerEvent.TIMER,_interval);
_timer.start(); _funAry = [];
}
}
private function _interval(evt:TimerEvent):void
{
var len:int = _funAry.length;
for(var i:int = ;i<len;i++)
{
var info:GFunInfo = _funAry[i];
if(info.isReset)
{
info.temp ++;
if(info.temp % info.delay == ){
if(info.fun!=null)
{
info.fun();
}
}
}else if(_timer.currentCount % info.delay == )
{
if(info.fun!=null)
{
info.fun();
}
}
}
}
/**
*注册函数进去
* @param fun
* @param senconds 几秒间隔
*/
public function add(struct:GFunInfo):void
{
if(_funAry.indexOf(struct)==-)
{
_funAry.push(struct);
if(struct.isReset){
struct.temp = ;
}
}
}
/**
*移除函数
* @param fun
*
*/
public function remove(struct:GFunInfo):void
{
var index:int = _funAry.indexOf(struct);
if(index != -)
{
_funAry.splice(struct,);
}
}
/**
*销毁
*
*/
public function destory():void
{
_funAry.length = ;
_timer.stop();
_timer = null;
}
}
}
package game.mananger
{
public class GFunInfo
{
/**
*
* @param fun 回调函数
* @param delay 间隔秒数
* @isReset isReset 重新add后是否继续上次的计数
*/
public function GFunInfo(fun:Function,delay:int,isReset:Boolean)
{
this.fun = fun;
this.delay = delay;
this.isReset = isReset;
}
public var fun:Function;
public var delay:int;
public var isReset:Boolean;
public var temp:int;
}
}
testGtimer(); private function testGtimer():void
{
var g:GTimerManager = new GTimerManager();
g.add(new GFunInfo(testGfun,5,true));
g.add(new GFunInfo(testGfun2,1,false));
}
private function testGfun():void
{
trace("testGfun");
}
private function testGfun2():void
{
trace("testGfun2");
}
flash Timer 性能优化,每几秒间隔一次的更多相关文章
- flash性能优化方案整理(最全)
性能优化的原则 1.避免过早优化:太早优化将使代码难以设计和维护,最好是针对程序的瓶颈进行优化. 2.改进性能有时需要权衡:不能一味注重改进性能,一个项目要考虑各方面的利弊,比如代码的健壮性,结构性, ...
- Android应用性能优化(转)
人类大脑与眼睛对一个画面的连贯性感知其实是有一个界限的,譬如我们看电影会觉得画面很自然连贯(帧率为24fps),用手机当然也需要感知屏幕操作的连贯性(尤其是动画过度),所以Android索性就把达到这 ...
- 转——Android应用开发性能优化完全分析
[工匠若水 http://blog.csdn.net/yanbober 转载请注明出处.] 1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜一堆关于性能的建议,感觉 ...
- android app性能优化大汇总(UI渲染性能优化)
UI性能测试 性能优化都需要有一个目标,UI的性能优化也是一样.你可能会觉得“我的app加载很快”很重要,但我们还需要了解终端用户的期望,是否可以去量化这些期望呢?我们可以从人机交互心理学的角度来考虑 ...
- Android 应用开发性能优化完全分析
1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜一堆关于性能的建议,感觉大家你一总结.我一总结的都说到了很多优化注意事项,但是看过这些文章后大多数存在一个问题就是只 ...
- Android UI性能优化详解
设计师,开发人员,需求研究和测试都会影响到一个app最后的UI展示,所有人都很乐于去建议app应该怎么去展示UI.UI也是app和用户打交道的部分,直接对用户形成品牌意识,需要仔细的设计.无论你的ap ...
- 【转】Android应用开发性能优化完全分析
http://blog.csdn.net/yanbober/article/details/48394201 1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜一堆关 ...
- Android应用开发性能优化完全分析
1 背景 其实有点不想写这篇文章的,但是又想写,有些矛盾.不想写的原因是随便上网一搜一堆关于性能的建议,感觉大家你一总结.我一总结的都说到了很多优化注意事项,但是看过这些文章后大多数存在一个问题就是只 ...
- hbase性能优化总结
hbase性能优化总结 1. 表的设计 1.1 Pre-Creating Regions 默认情况下,在创建HBase表的时候会自动创建一个region分区,当导入数据的时候,所有的HBase客户端都 ...
随机推荐
- SQL Server 2008 添加约束
ALTER TABLE Student --主键约束ADD CONSTRAINT PK_StuNo PRIMARY KEY (StudentNo) ALTER TABLE Student --唯一约束 ...
- 20145307陈俊达《网络对抗》Exp4 恶意代码分析
20145307陈俊达<网络对抗>Exp4 恶意代码分析 基础问题回答 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪 ...
- awk根据指定的字符串分割字符串
以从字符串"hello-kitty-red-for-you"中获取-for前面的内容为例: echo "hello-kitty-red-for-you" |aw ...
- TortoiseGit 访问https远程仓库,上报SSL证书错误解决方法
报错 在使用TortoiseGit时,clone自己搭建的gitlab报如错SSL certificate problem: self signed certificate 原因:自行搭建的gitla ...
- SSD-Tensorflow 从工程角度进行配置
目录 SSD-Tensorflow 工程角度配置 Download from the github 数据集转化tfrecords格式 训练模型(pre-train) 训练方案一 训练方案二 训练方案3 ...
- linux中find与rm实现查找并删除目录或文件
linux 下用find命令查找文件,rm命令删除文件. 删除指定目录下指定文件find 要查找的目录名 -name .svn |xargs rm -rf 删除指定名称的文件或文件夹: find -t ...
- CentOS环境Docker安装教程(官方推荐的docker三种方式安装)
CentOS环境Docker安装教程(官方推荐的docker三种方式安装) 一.使用yum方式安装 1.安装依赖包 $ sudo yum install -y yum-utils device-map ...
- a href 属性
两种用法: 页面跳转时使用 url (部分浏览器会阻止新窗口弹出页面),其他情况一律遵循 ‘结构样式行为分离’ 1. url href="#" 文档顶部 ...
- gif&png&jpg&webp
几种图片格式的区别和联系 1.http://www.tuicool.com/articles/AbUvI3A
- URI,URL与URN的区别
2017-11-13 16:51:49 URI = Universal Resource Identifier 统一资源标志符 URL = Universal Resource Locator 统一资 ...