首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

精确到毫秒的计时器,怎么做呢

2013-01-11 
精确到毫秒的计时器,如何做呢?我想实现这样的功能:给定一个时间,比如12:20:30 005 这样一个时间,要求在这

精确到毫秒的计时器,如何做呢?
我想实现这样的功能:
给定一个时间,比如12:20:30 005 这样一个时间,要求在这个时间启动一个函数

请问,我该如何实现呢?timer精确只能到300毫秒,我希望最少能精确到100ms


[解决办法]
用 
QueryPerformanceFrequency和QueryPerformanceCounter


才能这么高的精度
[解决办法]
试试下边的代码能否满足需求


var
  TimeB, TimeE, F : Int64;
  d1 : Double;
  i, j: integer
begin
  QueryPerformanceFrequency(F);  //时钟频率
  QueryPerformanceCounter(TimeB);  //计时开始
  for i := 0 to 1000000 do
    j := i;

  QueryPerformanceCounter(TimeE);
  d1 := (TimeE - TimeB)/F*1000; 

  ShowMessage(FloatToStr(d1));  //d1毫秒级
end;

热点排行