原理:利用设置了超时参数的Ping命令Ping无效地址来达到控制时延的目的
命令样式:
- ping -n 1 -w 毫秒数 128.1>nul
复制代码
但在实际操作中发现,对于1000毫秒以下的控制效果很不理想
实验代码:
- @echo off&setlocal enableDelayedExpansion
- echo %time%
- for /L %%i in (0 100 1000) do (
- echo.%%i&ping -n 1 -w %%i 128.1>nul
- echo !time!
- )
- pause
复制代码
实验结果:
- 21:34:35.98
- 0
- 21:34:36.10
- 100
- 21:34:36.60
- 200
- 21:34:37.10
- 300
- 21:34:37.60
- 400
- 21:34:38.10
- 500
- 21:34:39.10
- 600
- 21:34:40.10
- 700
- 21:34:41.10
- 800
- 21:34:42.10
- 900
- 21:34:43.10
- 1000
- 21:34:44.60
复制代码
可以看出,对于500以下的设置基本都需要500ms的执行时间,而对于500~1000的参数设置差不多都需要1000ms的执行时间
看来要利用它来实现一些精巧的动画效果是困难了。
后来我又修改了一下设置,想看Ping在较大的参数设置下的表现:
实验代码:
- @echo off&setlocal enableDelayedExpansion
- echo %time%
- for /L %%i in (10000 1000 20000) do (
- echo.%%i&ping -n 1 -w %%i 128.1>nul
- echo !time!
- )
- pause
复制代码
实验结果:
- 21:28:59.15
- 10000
- 21:29:09.60
- 11000
- 21:29:21.10
- 12000
- 21:29:33.60
- 13000
- 21:29:47.10
- 14000
- 21:30:01.60
- 15000
- 21:30:17.10
- 16000
- 21:30:33.60
- 17000
- 21:30:51.10
- 18000
- 21:31:09.60
- 19000
- 21:31:29.10
- 20000
- 21:31:49.60
复制代码
表现的还不错,看来在有在1秒以上延时需要的Ping也许是个不错的选择.
本机配置:E7400/4G DDRII/MSI P43 NEO3 |