高精度计时器(微秒级)
来源:互联网 发布:从事seo要学些什么 编辑:程序博客网 时间:2024/06/04 19:53
最近要用到高精度的计时器,去网上查了资料。自已调试了下,做成了一个简单的C语言接口!
main.c文件
#include <stdio.h>#include <Windows.h>#defineTRACE_CMH printfextern "C" long long GetCurTime();extern "C" double GetTimeConsume(long long start, long long end);int main(int argc, char* argv){for (int i=0; i<10; ++i){long long startTime = GetCurTime();//开始时间Sleep(100);long long endTime = GetCurTime();//结束时间double consume = GetTimeConsume(startTime, endTime);TRACE_CMH("%f(us)\n", consume);}system("pause");return 0; }
timer.c 文件
/************************************************************************** * @Copyright (c) 2014, ChenMH, All rights reserved. * @file : Tag_PCI_9054.cpp * @version : ver 1.0 * @author : ChenMH * @date : 2014/09/09 09:57 * @brief : Windows平台下的高精度计时器,可以精确到微秒级!**************************************************************************/ #ifdef __cplusplusextern "C" {#endif#include <stdio.h>#include <Windows.h>#define MS 1000000;//时间精度:微秒static LARGE_INTEGER litmp; static double dfMinus,dfFreq,dfTim;/******************************************************** * @function : GetCurTime * @brief : 获取定时器的当前计数值 * @author : ChenMH 2014/08/18 10:29 ********************************************************/ long long GetCurTime(){//如果硬件支持,获取当前计数值if(QueryPerformanceFrequency(&litmp))QueryPerformanceCounter(&litmp);elsereturn 0;return litmp.QuadPart;}/******************************************************** * @function : GetTimeConsume * @brief : 通过开始和结束的两个计数值,来计算时间消耗。 * @author : ChenMH 2014/08/18 10:39 ********************************************************/ double GetTimeConsume(long long start, long long end){QueryPerformanceFrequency(&litmp);dfFreq = (double)litmp.QuadPart;//定时器的频率dfMinus = (double)(end - start); dfTim = (dfMinus/dfFreq);//转换为秒return dfTim * MS;//转换为微秒}#ifdef __cplusplus}#endif
0 0
- 高精度计时器(微秒级)
- 微秒级计时器类
- 微秒级计时器
- 统计程序运行时间 微秒级计时器
- 高精度/微秒级线程的实现
- 高精度计数器-微秒
- 微秒级计时器,用来统计程序运行时间
- 高精度计时器
- 高精度计时器
- 高精度计时器
- 高精度计时器
- CPU 测速(MHz)和高精度延时(微秒级)
- (转帖)CPU 测速(MHz)和高精度延时(微秒级)
- CPU 测速(MHz)和高精度延时(微秒级)
- CPU 测速(MHz)和高精度延时(微秒级)
- CPU 测速(MHz)和高精度延时(微秒级)
- Windows高精度微秒级(并发)定时器实现
- 怎样获得高精度计时器
- 程序员的年度计划
- Linux mint 17中文输入法安装,修改linux mint与windows7双系统启动顺序
- 使用BusyBox制作linux根文件系统(CramFS+mdev)
- 我们往往对陌生人更加宽容,对最亲的人却更加苛刻
- QML类型说明-Emitter
- 高精度计时器(微秒级)
- js继承
- 开发中的日志管理类
- C 语言用fopen返回值判断某一文件是否存在
- RTMP/RTP/RTSP/RTCP的区别
- ip查询演示代码
- 南京公司注册:工信部:上半年新登记注册企业同比大增近70%
- Linux和windows下socket编程的一点区别
- 高性能图片服务器浅谈