DELPHI高精度计时方法

2016-02-19 16:21 9 1 收藏

清醒时做事,糊涂时读书,大怒时睡觉,无聊时关注图老师为大家准备的精彩内容。下面为大家推荐DELPHI高精度计时方法,无聊中的都看过来。

【 tulaoshi.com - 编程语言 】

 

  //取毫秒级时间精度(方法一):
  var
    t1,t2:int64;
    r1:int64;
  begin
    t1:=GetTickCount;//获取开始计数 WINDOWS API
    sleep(1000);{do...}//执行要计时的代码
    t2:=GetTickCount;//获取结束计数值
    r1:=t2-t1;//取得计时时间,单位毫秒(ms)
    showmessage(inttostr(r1));
  end;

  //取毫秒级时间精度(方法二):
  //use DateUtils;//引用DateUtils单位
  var
    t1,t2:tdatetime;
    r1:int64;
  begin
    t1:=now();//获取开始计时时间
    sleep(1000);{do...}//执行要计时的代码
    t2:=now();//获取结束计时时间
    r1:=SecondsBetween(t2,t1);//取得计时时间,单位秒(s)
    r1:=MilliSecondsBetween(t2,t1);//取得计时时间,单位毫秒(ms)
    showmessage(inttostr(r1));
  end;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  //注:以上两种方式经本人测试好像只能产生0.01秒的计时精度

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)

  //取系统级时间精度:
  var
    c1:int64;
    t1,t2:int64;
    r1:double;
  begin
    QueryPerformanceFrequency(c1);//WINDOWS API 返回计数频率(Intel86:1193180)(获得系统的高性能频率计数器在一毫秒内的震动次数)
    QueryPerformanceCounter(t1);//WINDOWS API 获取开始计数值
    sleep(1000);{do...}//执行要计时的代码
    QueryPerformanceCounter(t2);//获取结束计数值
    r1:=(t2-t1)/c1;//取得计时时间,单位秒(s)
    r1:=(t2-t1)/c1*1000;//取得计时时间,单位毫秒(ms)
    r1:=(t2-t1)/c1*1000000;//取得计时时间,单位微秒
    showmessage(floattostr(r1));
  end;
  

来源:http://www.tulaoshi.com/n/20160219/1611789.html

延伸阅读
首先创建 Excel 对象,使用ComObj: var ExcelApp: Variant; ExcelApp := CreateOleObject( 'Excel.Application' ); 注意程序结束时释放变量 ExcelApp:=unassigned; 1 显示当前窗口: ExcelApp.Visible := True; 2 更改 Excel标题栏: ExcelApp.Caption := '应用程序调用 Microsoft Excel'; 3 添加新工作簿: ExcelApp.WorkBooks...
标签: Delphi
  2.1.4 跳转语句 Object Pascal的跳转语句有 if 和 case两个。 2.1.4.1 if语句         if语句会计算一个表达式,并根据计算结果决定程序流程。在上文的例程中,根据 ColorDialog.Execute 的返回值,决定窗体的背景颜色。 if 保留字后跟随一个生成 Boolean 值 True或 False 的表达式...
标签: excel
怎么设置Excel2007数据精度?   使用以显示精度为准选项会产生累积计算影响,使您的数据随着时间的推移越来越不准确。仅在您确定显示精度可以保持数据的精确度时才可以使用此选项。 1、单击Office 按钮按钮图像,然后单击Excel 选项。 2、单击高级,然后在计算此工作簿时下选中将精度设为所显示的精度复选框,再单击确定。 ...
标签: Delphi
  Delphi 的编程语言是以 Pascal为基础的。 Pascal 语言具有可读性好、编写容易的特点,这使得它很适合作为基础的开发语言。同时,使用编译器创建的应用程序只生成单个可执行文件 (.EXE) ,正是这种结合,使得 Pascal 成为 Delphi这种先进开发环境的编程语言。         本章中,我们将讨论 Object...
标签: Delphi
  2.1.8.4 过程和函数的语句部分         过程或函数的语句部分由 begin 开始, end结束。函数需要一个返回值。可以将返回值赋给函数名称,也可以将返回值赋给 Result 变量。下面的例程将返回值赋给函数名称: function CalculateInterest(Principal,InterestRate: Double):Double; begi...

经验教程

39

收藏

69
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部