struct timeval 和 struct timespec 应用小结
在基于linux的C编程中,经常会看到 struct timeval和struct timespec 这两个跟时间有关的结构体,有时候会容易混淆,先看下这两个结构体的定义,以linux-2.6.35为例,在time.h下
struct timeval {__kernel_time_t tv_sec; /* seconds */__kernel_suseconds_t tv_usec; /* microseconds */
};struct timespec {__kernel_time_t tv_sec; /* seconds */long tv_nsec; /* nanoseconds */
};
进一步查找_kernel_time_t 的含义 可知这两个结构体的内容如下:
struct timeval {long tv_sec; /* seconds */long tv_usec; /* microseconds */
};struct timespec {long tv_sec; /* seconds */long tv_nsec; /* nanoseconds */
};
小结:
1、struct timeval 的成员,一个是秒,一个是微秒,所以最高精度是 微秒。
2、struct timespec 的成员,一个是秒,一个是纳秒,所以最高精度是 纳秒。
常见应用场景:
1、struct timeval 一般由函数
int gettimeofday(struct timeval *tv, struct timezone *tz)
获取系统时间。
2、struct timespec 一般由函数
int clock_gettime(clockid_t, struct timespec *)
获取特定时钟的时间。
struct timeval 和 struct timespec 应用小结相关推荐
- 结构体struct timeval 和 struct timespec的定义
结构体struct timeval 和 struct timespec的定义均在头文件<sys/time.h>中,具体定义如下: struct timeval {long tv_sec; ...
- struct timeval 和 struct timespec
1. 使用timeval,微秒级(1s = 1 000ms = 1 000 000us = 1 000 000 000ns) struct timeval {long tv_sec; //second ...
- Linux时间相关知识小结:struct timeval、timespec、gettimeofday、time、localtime....
前言 我们在linux平台进行开发时,时间相关的操作基本上都会遇到,本文就对常用的时间相关的结构体.接口进行分析小结. 常见类型.结构体定义 timespec 原型 struct timespec { ...
- Linux高精度struct timespec和struct timeval
1. 结构基本定义 1.1 struct timespec 定义 typedef long time_t; #ifndef _TIMESPEC #define _TIMESPEC struct tim ...
- Linux高精度struct timespec 和 struct timeval
struct timespec now_ts;clock_gettime(CLOCK_MONOTONIC, &now_ts);printf("os tick times, %ld s ...
- struct timespec 和 struct timeval
struct timespec 和 struct timeval time()提供了秒级的精确度 . 1.头文件 <time.h> 2.函数原型 time_t time(time_t * ...
- struct timeval用法与时间溢出问题
1.用法 高精度计算时间的结构体struct timeval. 头文件是sys/time.h 网上查找的定义是 #include "sys/time.h"struct timeva ...
- linux系统中struct timeval结构体、struct timezone结构体以及gettimeofday函数
格林尼治时间.协调世界时 间.世界时间.日光节约时间以及时区等介绍: 格林尼治时间(Greenwich Mean Time,GMT)是指位于英国伦敦郊区的皇家格林尼治天文台当地的标准时间,因为本初子午 ...
- struct timeval的处理(timeval比较及相减)
timeval结构体的处理函数 timeval的大小比较 timeval转为double类型的秒 两个timeval类型之间的时间差 函数耗时测试 timeval的大小比较 /************ ...
最新文章
- usaco A game
- 用python画玫瑰花代码-python绘制玫瑰的实现代码
- JVM - Class常量池 || 运行时常量池
- CentOS 6.7构建 OpenResty(Nginx)+PHP 7(php-fpm)+MySQL5.7 运行环境
- matlab从哪里学,从零开始学MATLAB(附光盘)/从零开始学系列
- 架设 DNF(地下城与勇士) 三分钟搭建
- C语言 枚举——熄灯问题
- 依图科技(北京)计算机视觉算法实习生面经-2020年10月
- 2017 iOS最新面试题汇总(二)
- 找不到网络路径计算机共享,win10 局域网共享问题 提示0x80070035 找不到网络路径...
- 深度学习(五):对对联,根据上联,对下联
- 超简单的C++去重、排序
- uniapp 解决onReachBottom失效
- 【转】关于linux中wps出现系统字体缺失的解决方法
- html设定列的最小宽度,设置Grid Layout列最小宽度的方法
- FossaSat-1开源卫星
- 薛定谔 | 先导化合物优化与相互作用可视化
- 工作汇报ppt案例_美国苹果公司内部年终汇报PPT曝光!网友:职场范十足,学习了...
- 用Spring构建企业Java应用程序
- mysql存储过程查询结果分页并返回总记录数
热门文章
- android性能优化和内存优化面试,看懂这些帮你轻松解决就业问题
- ESP8266配网并将IP显示至oled液晶屏 ESP8266远程连接服务器控制灯或继电器
- 离婚时婚后父母出资所购房屋分割规则
- 【读书笔记】:cs231n(image classification notes)
- 九阴真经全文(转载)
- strerror(errno)函数
- [C++杂谈]:MD5以及XML数字签名
- 算法学习笔记——数据结构:哈夫曼树、带权路径长度WPL、哈夫曼编码
- 怎么给09淘宝店增加附加价值
- java x轴 左正_Java总结篇系列:Java泛型