Linux系统下精确到微秒级的时间操作函数

转载 2012年03月23日 11:29:01

Linux系统下精确到微秒级的时间操作函数

来源:互联网 编辑:网风 时间:2009-07-28 394
 

Linux下对时间进行运算,如果是到秒级的,相信大家都用过time之类的函数实现了,但要更精确些呢?到毫秒、微秒级呢?

看看下面这段源代码就明白了:

#include <sys/time.h>
#include <stdio.h>
#include <math.h>

void function()/*用来耗用一定的时间而已,无实际用处的函数*/
{
  unsigned int i,j;
  double y;
  for(i=0;i<10000;i++)
    for(j=0;j<10000;j++)
      y=sin((double)i);
}

int main(int argc, char ** argv)
{
  struct timeval tpstart,tpend;
  float timeuse;

  gettimeofday(&tpstart,NULL);
  function();
  gettimeofday(&tpend,NULL);
  timeuse=1000000*(tpend.tv_sec-tpstart.tv_sec)+tpend.tv_usec-tpstart.tv_usec;
  timeuse/=1000000;
  printf("Used Time:%f\n",timeuse);
  exit(0);
}

主要是用到了gettimeofday函数,函数里用到了这个结构:

struct timeval {
               long tv_sec;        /* seconds */
               long tv_usec;  /* microseconds */
       };

C/C++获取精确到微秒级的系统时间

最近要为自己的项目开发一个日志模块,需要获取精确到微秒级的系统时间,查阅了一些资料,发现在C/C++里面可以通过gettimeofday(struct timeval * tv,struct time...
  • wcl199274
  • wcl199274
  • 2014年09月30日 11:05
  • 5463

20140627-STM8L101F3P6关于微秒级延时函数不同写法的波形

1.STM8L101F3P6工作在16MHz下,延时函数程序如下: /****************************************************************...
  • sy_lixiang
  • sy_lixiang
  • 2014年06月27日 12:52
  • 4051

获取精确到微秒的系统时间

获取精度到毫秒的系统时间
  • lby978232
  • lby978232
  • 2016年09月13日 09:49
  • 2619

获取微秒级时间

对关注性能的程序开发人员而言,一个好的计时部件既是益友,也是良师。计时器既可以作为程序组件帮助程序员精确的控制程序进程,又是一件有力的调试武器,在有经验的程序员手里可以尽快的确定程序的性能瓶颈,或者对...
  • maochengtao
  • maochengtao
  • 2013年05月13日 21:37
  • 1447

C++获取系统当前时间(精确到微秒)

获取系统当前时间在调试、日志输出、代码优化时,我们常常需要获得系统的时间。在一些性能要求高的代码优化时,对时间的精确度还比较高。在网上找不高质量的代码,便自己研究了一下,代码如下(能满足跨平台的要求,...
  • luoweifu
  • luoweifu
  • 2016年05月05日 19:02
  • 13058

Windows下精确获取程序的运行时间可精确到微妙

在Windows下可以用系统提供的API函数 QueryPerformanceFrequency 和 QueryPerformanceCounter 来进行高精度的计时,现在的机器基本上都提供这种高精...
  • Enter_
  • Enter_
  • 2016年07月29日 21:51
  • 3089

STM32Cubemx下实现通用定时器微秒级延时

因为STM32 HAL库中仅有对HAl_Delay()毫秒级的延时,为实现精确的微秒级延时,就不得不修改Systick,但由于HAL库内部使用其作为超时判断等操作,对其修改会发生不可预期的错误,不建议...
  • qq_22252423
  • qq_22252423
  • 2017年07月24日 16:59
  • 772

微秒级时间函数

#ifndef __CPerfCounter__ #define __CPerfCounter__ #include #include #include #include #incl...
  • Leonshi001
  • Leonshi001
  • 2015年09月25日 17:40
  • 269

linux下微妙级别定时实现

1.介绍   在linux下如果定时如果要求不太精确的话,使用alarm()和signal()就行了(精确到秒),但是如果想要实现精度较高的定时功能的话,就要使用setitimer函数。 ...
  • stone_flower_rain
  • stone_flower_rain
  • 2015年12月01日 09:23
  • 1644

Linux下时间输出格式精确到微秒-gettimeofday

#include int gettimeofday(struct timeval*tv, struct timezone *tz); 其参数tv是保存获取时间结果的结构体,参数tz用于保存时区结果:...
  • hanghang121
  • hanghang121
  • 2015年11月13日 11:43
  • 1834
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux系统下精确到微秒级的时间操作函数
举报原因:
原因补充:

(最多只允许输入30个字)