linux时间类型

linux时间类型
日历时间
time_t类型保存 表示从1970年1月1日 0:0:0经过的秒数

进程Cpu时间
 clock_t
 时钟时间         进程运行的总的时间
 用户CPU时间      执行用户指令需要的时间
 系统CPU时间      内核执行的时间
通过time命令可以获取进程cpu时间

 

  time_t 包含的是经过的秒数
  timeval 包含有秒数和微妙数2种
  clock_t 表示内核时钟的滴答数
  struct tm  把每种类型的时间
      int tm_sec;
      int tm_min;
      int tm_hour;
      int tm_mday;
      int tm_mon;
      int tm_year;
      int tm_wday;
      int tm_yday;
      int tm_isdst;

  time函数 返回 time_t
  gettimeofday 返回timeval

 struct timeval {
             time_t      tv_sec;     /* seconds */
             suseconds_t tv_usec;    /* microseconds */
         };

timeval表示从epoch到今天经过了tv_sec这么多秒 零  tv_usec这么多微妙

 struct timeval {
             time_t      tv_sec;     /* seconds */
             suseconds_t tv_usec;    /* microseconds */
         };

timeval表示从epoch到今天经过了tv_sec这么多秒 零  tv_usec这么多微妙


 struct timespec {
                  time_t tv_sec;        /* seconds */
                  long   tv_nsec;       /* nanoseconds */
              };

timespec 表示从epoch到今天经过了tv_sec这么多秒 零  tv_nsec这么多纳妙


打印出当前时间的代码,带微妙

------------------------------------------------

struct timeval tv;
time_t t;
struct tm * st_tm;
 gettimeofday(&tv, NULL); t = tv.tv_sec; st_tm = localtime(&t);
printf("%d-%d-%d %d:%d:%d.%ld\n", st_tm->tm_year + 1900, st_tm->tm_mon + 1, st_tm->tm_mday,
             st_tm->tm_hour, st_tm->tm_min, st_tm->tm_sec, tv.tv_usec);







时间单位:     秒(s),         毫秒(ms),           微妙(um),            纳秒(nm),                  皮秒(pm),

秒单位之间进制1000

三个睡眠函数
sleep and usleep , nanosleep()

你可能感兴趣的:(linux,struct,null,日历)