Flash休眠模式对Timer的影响

之前处理加速器、降帧、休眠模式对Flash的Event.ENTER_FRAME频率的影响。有考虑过用Timer驱动主循环,保证稳定帧率30FPS,测试后发现Flash休眠模式也会导致Timer降频。故放弃,也未作进一步测试。

今天有同事提起Flash倒计时的精度,再次测试了一下,发现了一点规律,以下为用Timer定时打印getTimer()的结果:

delay = 30:

1845
1877
1912

--------进入休眠模式--------
2075
2581
3085

delay = 600:

1109
1731
2334

--------进入休眠模式--------
3024
4034
5042

delay=1200:

2522
3737
4953

--------进入休眠模式--------
6497
8009
9521

由上可观察出,进入休眠模式后Timer的delay会表现为delay = Math.ceil(delay / 500) * 500,及会向上取整为500ms的倍数。

所以Flash端的计时不要太当真,在降帧、休眠时计时器都会受影响,要保证Client端计时不出现太大偏差可定时向Server对时。

标签:flash, actionscript3, timer, 休眠模式

添加新评论