Timer与getTimer的准确率(zz)

http://home.cnblogs.com/

ExpandedBlockStart.gif 代码
stage.frameRate  =   100 ;
 
var  old: int   =   new  Date().getTime();
var  gt: int   =  getTimer();
var  ot: int   =  old;
var  t: int ;
 
var  timer:Timer  =   new  Timer( 1 );
timer.addEventListener(TimerEvent.TIMER,test);
timer.start();
 
function  test(e:TimerEvent): void
{
        
var  dx: int   =   new  Date().getTime();
        
var  dx2: int   =  getTimer();
 
        
if  ( dx2  >=   1000  )
        {
                timer.stop();
                trace(t , dx 
-  ot ,dx2);
                
return ;
        }
 
        trace(dx 
-  old , dx2  -  gt);
        old
= dx;
        gt 
=  dx2;
        t 
+=   1 ;
}

 

输出结果(取后面):
15 2
0 2
0 3
0 2
0 1
0 1
0 2
0 2
16 2
0 2
0 3
0 2
0 2
0 2
0 2
16 2
0 2
0 1
0 2
0 2
0 1
464 1000 1000

测试结果:
getTimer()与系统时间是符合的.也就是说是准确的
实际timer的1毫秒根本达不到1000次,也就是timer并不准确

另外也可以看出FlashPlayer每15毫秒去取一次系统时间,并缓存起来 

转载于:https://www.cnblogs.com/qiance/archive/2010/06/28/1766564.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值