clock_gettime系统调用详解

转载 2013年05月30日 10:50:01
注意
1.精确级别,纳秒级别
原型
long sys_clock_gettime (clockid_t which_clock, struct timespec *tp);
which_clock参数解释
CLOCK_REALTIME:系统实时时间,随系统实时时间改变而改变,即从UTC1970-1-1 0:0:0开始计时,中间时刻如果系统时间被用户该成其他,则对应的时间相应改变
CLOCK_MONOTONIC:从系统启动这一刻起开始计时,不受系统时间被用户改变的影响
CLOCK_PROCESS_CPUTIME_ID:本进程到当前代码系统CPU花费的时间
CLOCK_THREAD_CPUTIME_ID:本线程到当前代码系统CPU花费的时间

//test9.c
#include <stdio.h>
#include <time.h>
int main()
{
	struct timespec time1 = {0, 0};
	clock_gettime(CLOCK_REALTIME, &time1);
	printf("CLOCK_REALTIME: %d, %d", time1.tv_sec, time1.tv_nsec);
	clock_gettime(CLOCK_MONOTONIC, &time1);
	printf("CLOCK_MONOTONIC: %d, %d", time1.tv_sec, time1.tv_nsec);
	clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &time1);
	printf("CLOCK_PROCESS_CPUTIME_ID: %d, %d", time1.tv_sec, time1.tv_nsec);
	clock_gettime(CLOCK_THREAD_CPUTIME_ID, &time1);
	printf("CLOCK_THREAD_CPUTIME_ID: %d, %d", time1.tv_sec, time1.tv_nsec);
	printf("\n%d\n", time(NULL));
	sleep(1);
}





如果无法编译,默认没有加入该库,请用gcc test9.c -lrt运行
测试 #time ./a.out

Linux下clock_gettime函数详解

要包含这头文件 且在编译链接时需加上 -lrt ;因为在librt中实现了clock_gettime函数。 --- struct timespec ts; clock_gett...
  • yusiguyuan
  • yusiguyuan
  • 2014-01-13 20:13:32
  • 6931

linux clock_gettime函数详解

long sys_clock_gettime (clockid_t which_clock, struct timespec *tp);which_clock参数解释CLOCK_REALTIME:系统...
  • shanglihong
  • shanglihong
  • 2011-06-23 10:54:00
  • 7902

linux下常用的几个时间函数:time,gettimeofday,clock_gettime,_ftime

time()提供了秒级的精确度    1、头文件   2、函数原型  time_t time(time_t * timer)   函数返回从TC1970-1-1 0:0:0开始到现在的秒数    用t...
  • rosekin
  • rosekin
  • 2013-12-10 16:53:11
  • 14785

Linux 下使用clock_gettime给程序计时详解

Linux 下使用clock_gettime给程序计时详解,函数的原型如下: int clock_gettime(clockid_t clk_id, struct timespect *tp...
  • YUZHIBOYI
  • YUZHIBOYI
  • 2012-04-25 21:11:09
  • 4524

Linux 下使用clock_gettime详解

要包含这头文件 且在编译链接时需加上 -lrt ;因为在librt中实现了clock_gettime函数。 --- struct timespec ts; clock_gett...
  • origin_lee
  • origin_lee
  • 2014-12-15 17:16:39
  • 1876

clock_gettime 函数的使用

这是一个很有用的函数,尤其在做基于时间的程序的时候。 函数介绍 #include int clock_gettime(clockid_t   clk_id,   struct timespec ...
  • occupy8
  • occupy8
  • 2015-08-26 21:49:41
  • 3020

clockid_t与clock_gettime 函数

clockid_t kernel的time基本类型: 1) system time A monotonically increasing value that represents the am...
  • u010144805
  • u010144805
  • 2017-11-07 14:48:54
  • 125

clock_t用法

clock_t定义#ifndef _CLOCK_T_DEFINED typedef long clock_t; #define _CLOCK_T_DEFINED #endifclock_t是一个长整形...
  • zx3517288
  • zx3517288
  • 2016-01-21 11:17:45
  • 6011

clock()、time()、clock_gettime()和gettimeofday()函数的用法和区别

1. clock_gettime( ) 提供了纳秒的精确度 int clock_gettime(clockid_t clk_id, struct timespect *tp); clockid_t...
  • wind19
  • wind19
  • 2013-10-23 17:21:43
  • 12286

获取时间CLOCK_MONOTONIC学习——顺记第一次与开源项目交互

前段时间接触horst项目,该项目是Linux下WIFI分析软件,可在界面上显示(使用ncurses库)。花了一些时间——断断续续也有几周吧,基本上大致掌握了它的流程和原理。...
  • subfate
  • subfate
  • 2016-10-14 12:50:50
  • 3312
收藏助手
不良信息举报
您举报文章:clock_gettime系统调用详解
举报原因:
原因补充:

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