作者:zyl910
版本:V1.0.0
日期:2006-5-9
一直听说Timer比Wait精度高,但是具体精度是多少,没人知道。于是我做了个这个测试。
我的电脑配置:
CPU: AMD Athlon XP 1700+(实际频率:1463 MHz (11 x 133))
内存: Kingston DDR266 256MB *2(两根)
显卡: nVIDIA GeForce2 MX/MX 400(AGP 4X,显存32MB)
测试结果如下:
QUOTE:
[Test]
Time: 0.00001
Wait[0]: 0.250
Wait[1]: 0.375
Wait[2]: 0.500
Wait[3]: 0.625
Wait[4]: 0.750
Wait[5]: 0.875
Wait[6]: 1.125
Wait[7]: 1.250
Wait[8]: 1.375
Wait[9]: 1.500
WaitGT[0]: 0.250
WaitGT[1]: 0.500
WaitGT[2]: 0.625
WaitGT[3]: 0.875
WaitGT[4]: 1.125
WaitGT[5]: 1.250
WaitGT[6]: 1.625
WaitGT[7]: 1.875
WaitGT[8]: 2.000
WaitGT[9]: 2.250
Timer[0]: 0.125
Timer[1]: 0.125
Timer[2]: 0.125
Timer[3]: 0.125
Timer[4]: 0.125
Timer[5]: 0.125
Timer[6]: 0.125
Timer[7]: 0.125
Timer[8]: 0.125
Timer[9]: 0.125
Timer per Second: 8824
[Test]
Time: 0.00010
Wait[0]: 0.250
Wait[1]: 0.375
Wait[2]: 0.500
Wait[3]: 0.625
Wait[4]: 0.750
Wait[5]: 0.875
Wait[6]: 1.125
Wait[7]: 1.250
Wait[8]: 1.375
Wait[9]: 1.500
WaitGT[0]: 0.250
WaitGT[1]: 0.500
WaitGT[2]: 0.625
WaitGT[3]: 0.875
WaitGT[4]: 1.125
WaitGT[5]: 1.250
WaitGT[6]: 1.625
WaitGT[7]: 1.875
WaitGT[8]: 2.000
WaitGT[9]: 2.250
Timer[0]: 0.125
Timer[1]: 0.125
Timer[2]: 0.125
Timer[3]: 0.125
Timer[4]: 0.125
Timer[5]: 0.125
Timer[6]: 0.125
Timer[7]: 0.125
Timer[8]: 0.125
Timer[9]: 0.125
Timer per Second: 8824
[Test]
Time: 0.00100
Wait[0]: 0.250
Wait[1]: 0.375
Wait[2]: 0.500
Wait[3]: 0.625
Wait[4]: 0.750
Wait[5]: 0.875
Wait[6]: 1.125
Wait[7]: 1.250
Wait[8]: 1.375
Wait[9]: 1.500
WaitGT[0]: 0.250
WaitGT[1]: 0.500
WaitGT[2]: 0.625
WaitGT[3]: 0.875
WaitGT[4]: 1.125
WaitGT[5]: 1.250
WaitGT[6]: 1.625
WaitGT[7]: 1.875
WaitGT[8]: 2.000
WaitGT[9]: 2.250
Timer[0]: 0.125
Timer[1]: 0.125
Timer[2]: 0.125
Timer[3]: 0.125
Timer[4]: 0.125
Timer[5]: 0.125
Timer[6]: 0.125
Timer[7]: 0.125
Timer[8]: 0.125
Timer[9]: 0.125
Timer per Second: 877
[Test]
Time: 0.01000
Wait[0]: 0.250
Wait[1]: 0.375
Wait[2]: 0.500
Wait[3]: 0.625
Wait[4]: 0.750
Wait[5]: 0.875
Wait[6]: 1.125
Wait[7]: 1.250
Wait[8]: 1.375
Wait[9]: 1.500
WaitGT[0]: 0.250
WaitGT[1]: 0.500
WaitGT[2]: 0.625
WaitGT[3]: 0.875
WaitGT[4]: 1.125
WaitGT[5]: 1.250
WaitGT[6]: 1.625
WaitGT[7]: 1.875
WaitGT[8]: 2.000
WaitGT[9]: 2.250
Timer[0]: 0.125
Timer[1]: 0.125
Timer[2]: 0.125
Timer[3]: 0.125
Timer[4]: 0.125
Timer[5]: 0.125
Timer[6]: 0.125
Timer[7]: 0.125
Timer[8]: 0.125
Timer[9]: 0.125
Timer per Second: 89
[Test]
Time: 0.10000
Wait[0]: 0.375
Wait[1]: 0.625
Wait[2]: 1.000
Wait[3]: 1.250
Wait[4]: 1.625
Wait[5]: 1.875
Wait[6]: 2.250
Wait[7]: 2.500
Wait[8]: 2.750
Wait[9]: 3.125
WaitGT[0]: 0.375
WaitGT[1]: 0.625
WaitGT[2]: 0.875
WaitGT[3]: 1.250
WaitGT[4]: 1.625
WaitGT[5]: 1.875
WaitGT[6]: 2.125
WaitGT[7]: 2.500
WaitGT[8]: 2.750
WaitGT[9]: 3.125
Timer[0]: 0.125
Timer[1]: 0.250
Timer[2]: 0.375
Timer[3]: 0.500
Timer[4]: 0.500
Timer[5]: 0.625
Timer[6]: 0.750
Timer[7]: 0.875
Timer[8]: 1.000
Timer[9]: 1.000
Timer per Second: 10
可以看出:Time: 0.00001
Wait[0]: 0.250
Wait[1]: 0.375
Wait[2]: 0.500
Wait[3]: 0.625
Wait[4]: 0.750
Wait[5]: 0.875
Wait[6]: 1.125
Wait[7]: 1.250
Wait[8]: 1.375
Wait[9]: 1.500
WaitGT[0]: 0.250
WaitGT[1]: 0.500
WaitGT[2]: 0.625
WaitGT[3]: 0.875
WaitGT[4]: 1.125
WaitGT[5]: 1.250
WaitGT[6]: 1.625
WaitGT[7]: 1.875
WaitGT[8]: 2.000
WaitGT[9]: 2.250
Timer[0]: 0.125
Timer[1]: 0.125
Timer[2]: 0.125
Timer[3]: 0.125
Timer[4]: 0.125
Timer[5]: 0.125
Timer[6]: 0.125
Timer[7]: 0.125
Timer[8]: 0.125
Timer[9]: 0.125
Timer per Second: 8824
[Test]
Time: 0.00010
Wait[0]: 0.250
Wait[1]: 0.375
Wait[2]: 0.500
Wait[3]: 0.625
Wait[4]: 0.750
Wait[5]: 0.875
Wait[6]: 1.125
Wait[7]: 1.250
Wait[8]: 1.375
Wait[9]: 1.500
WaitGT[0]: 0.250
WaitGT[1]: 0.500
WaitGT[2]: 0.625
WaitGT[3]: 0.875
WaitGT[4]: 1.125
WaitGT[5]: 1.250
WaitGT[6]: 1.625
WaitGT[7]: 1.875
WaitGT[8]: 2.000
WaitGT[9]: 2.250
Timer[0]: 0.125
Timer[1]: 0.125
Timer[2]: 0.125
Timer[3]: 0.125
Timer[4]: 0.125
Timer[5]: 0.125
Timer[6]: 0.125
Timer[7]: 0.125
Timer[8]: 0.125
Timer[9]: 0.125
Timer per Second: 8824
[Test]
Time: 0.00100
Wait[0]: 0.250
Wait[1]: 0.375
Wait[2]: 0.500
Wait[3]: 0.625
Wait[4]: 0.750
Wait[5]: 0.875
Wait[6]: 1.125
Wait[7]: 1.250
Wait[8]: 1.375
Wait[9]: 1.500
WaitGT[0]: 0.250
WaitGT[1]: 0.500
WaitGT[2]: 0.625
WaitGT[3]: 0.875
WaitGT[4]: 1.125
WaitGT[5]: 1.250
WaitGT[6]: 1.625
WaitGT[7]: 1.875
WaitGT[8]: 2.000
WaitGT[9]: 2.250
Timer[0]: 0.125
Timer[1]: 0.125
Timer[2]: 0.125
Timer[3]: 0.125
Timer[4]: 0.125
Timer[5]: 0.125
Timer[6]: 0.125
Timer[7]: 0.125
Timer[8]: 0.125
Timer[9]: 0.125
Timer per Second: 877
[Test]
Time: 0.01000
Wait[0]: 0.250
Wait[1]: 0.375
Wait[2]: 0.500
Wait[3]: 0.625
Wait[4]: 0.750
Wait[5]: 0.875
Wait[6]: 1.125
Wait[7]: 1.250
Wait[8]: 1.375
Wait[9]: 1.500
WaitGT[0]: 0.250
WaitGT[1]: 0.500
WaitGT[2]: 0.625
WaitGT[3]: 0.875
WaitGT[4]: 1.125
WaitGT[5]: 1.250
WaitGT[6]: 1.625
WaitGT[7]: 1.875
WaitGT[8]: 2.000
WaitGT[9]: 2.250
Timer[0]: 0.125
Timer[1]: 0.125
Timer[2]: 0.125
Timer[3]: 0.125
Timer[4]: 0.125
Timer[5]: 0.125
Timer[6]: 0.125
Timer[7]: 0.125
Timer[8]: 0.125
Timer[9]: 0.125
Timer per Second: 89
[Test]
Time: 0.10000
Wait[0]: 0.375
Wait[1]: 0.625
Wait[2]: 1.000
Wait[3]: 1.250
Wait[4]: 1.625
Wait[5]: 1.875
Wait[6]: 2.250
Wait[7]: 2.500
Wait[8]: 2.750
Wait[9]: 3.125
WaitGT[0]: 0.375
WaitGT[1]: 0.625
WaitGT[2]: 0.875
WaitGT[3]: 1.250
WaitGT[4]: 1.625
WaitGT[5]: 1.875
WaitGT[6]: 2.125
WaitGT[7]: 2.500
WaitGT[8]: 2.750
WaitGT[9]: 3.125
Timer[0]: 0.125
Timer[1]: 0.250
Timer[2]: 0.375
Timer[3]: 0.500
Timer[4]: 0.500
Timer[5]: 0.625
Timer[6]: 0.750
Timer[7]: 0.875
Timer[8]: 1.000
Timer[9]: 1.000
Timer per Second: 10
一、Wait的精度是0.15s左右,Wait(game-time)的精度更是惨不容睹。
二、Timer的精度是0.0001s,但由于各方面原因,速度会稍微慢一点。
Wait用于秒级的延时。对于 小于0.15s 的延时,必须得用Timer。
[ 本帖最后由 zyl910 于 2006-5-9 18:52 编辑 ]
附件: WaitVSTimer.rar (2006-5-9 17:39, 18.2 K)责任编辑:admin
进入论坛参与针对本文章的讨论
