根据CPU时钟获得微秒级计时

在定时之前,先调用QueryPerformanceFrequency()函数获得时钟频率,然后在事件发生前后分别调用QueryPerformanceCounter()函数,通过计数之差及时钟频率,计算出事件经历的精确时间
下面的例子是测试int i = 0及上下语句执行间的时间间隔,时间单位为秒,以double类型为精度

图像实时处理常用时间间隔计算方法

#include <iostream>
#include <Windows.h>
using namespace std;
int main(void)
{
    LONGLONG begin_time;
    LONGLONG end_time;
    double time_fre;
    double time_elapsed;
    LARGE_INTEGER litmp;
   
    QueryPerformanceFrequency(&litmp);
    time_fre = (double)litmp.QuadPart;
    QueryPerformanceCounter((LARGE_INTEGER *)&begin_time);
    int i = 0; //测试int i = 0及上下语句执行间的时间间隔,秒为单位
    QueryPerformanceCounter((LARGE_INTEGER *)&end_time);
    time_elapsed = (end_time - begin_time) / time_fre;
    cout.precision(20);
   
    cout<<"time elapsed:"<<time_elapsed<<endl;
    system("pause");
    return 0;
}

转载于:https://www.cnblogs.com/qnbs1/articles/1772672.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值