精确获取代码运行时间毫秒级us

一般我们用clock()获取的都是ms毫秒级 但有很多时候毫秒级是不够的,微秒级是运用cpu滴嗒数来计数的。

精确时间,微秒级us,在实际编程中是非常重要的,是检验算法非常好的方法之一。现在就来讲讲win下是如何获取的。

这里要用到两个win?api函数

1.QueryPerformanceFrequency()? ?每秒CPU滴嗒次数

2.QueryPerformanceCounter()? CPU滴嗒数

方法就是,开始先获取? CPU滴嗒数 starttime,结束进再获取一次endtime,

endtime – startime 再除 ?/每秒CPU滴嗒次数。就是多少秒了,

将秒数转换成毫秒,公式如下:

1S = 1000ms? ? ? ? ? ? ? ? 1ms = 1000us

下面写下具体实现代码:

有了这以上封好的两个函数,在计算代码运行时间将会方便很多,

例:

如要写好dll 代码,可以用git直接下载,地址:git@gitee.com:royzou/PreciseTime.git

网址:https://gitee.com/royzou/PreciseTime