Linux下获取时间差(毫秒级)
在基于嵌入式软件系统开发时,针对性能统计,按键响应时间处理等都需要获取时间和时间间隔差等,以下使用Linux的gettimeofday函数即可实现。
其中t1=t_start.tv_sec是公元1970年至今的时间(换算为秒)
t2=t_start.tv_usec是当前秒数下的微妙数,所以将t1*1000+t2/1000可以得到当前的毫秒数
判断两次遥控器按键事件或处理事件的时间间隔就容易实现了。
#include <stdio.h>
#include <sys/time.h>
#include <time.h>
int gettimeofday(struct timeval *tv, struct timezone *tz);
int main(int argc,char * argv[]){
struct timeval t_start,t_end;
long cost_time = 0;
//get start time
gettimeofday(&t_start, NULL);
long start = ((long)t_start.tv_sec)*1000+(long)t_start.tv_usec/1000;
printf("Start time: %ld ms\n", start);
sleep(2); //秒为单位
//get end time
gettimeofday(&t_end, NULL);
long end = ((long)t_end.tv_sec)*1000+(long)t_end.tv_usec/1000;
printf("End time: %ld ms\n", end);
//calculate time slot
cost_time = end - start;
printf("Cost time: %ld ms\n", cost_time);
return 0;
}
Linux下获取时间差(毫秒级)相关推荐
- Linux下获取毫秒级时间差
Linux下获取毫秒级时间差 使用Linux的gettimeofday函数可以达到这个目的 其中t1=t_start.tv_sec是公元1970年至今的时间(换算为秒) t2=t_start.tv ...
- linux怎么获取当前路径,linux 下获取当前工作路径的实例
获取工作路径这里介绍两种方法: 1.使用getcwd()函数. 头文件:#include 定义函数:char * getcwd(char * buf, size_t size); 函数说明:getcw ...
- linux下获取某文件的总行数
为什么80%的码农都做不了架构师?>>> 需求: linux下获取某文件的总行数 实现: 方案一: echo cat logfile.txt | wc -l 方案二: more ...
- linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合: ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head linux下
linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合: ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head linux下获取占用 ...
- Linux下获取xml调试信息等级
Linux下获取XML调试信息等级 #ifndef _LOG_H_ #define _LOG_H_#include <stdio.h> #include <string.h> ...
- .net core在Linux下获取AD域信息
.net core在Linux下获取AD域信息 .net Core 2.1.4 .net core现在System.DirectoryServices只支持Windows平台下使用. 参考: http ...
- linux 权限 c,Linux下获取root权限的c程序
Linux下获取root权限的c程序 传递euid和egid给脚本,使脚本具有特殊用户的权限 使脚本实现类于设置了stick位的效果 shell, python, perl等脚本.程序不能取得suid ...
- linux c 获得root权限,Linux下获取root权限的c程序
Linux下获取root权限的c程序 传递euid和egid给脚本,使脚本具有特殊用户的权限 使脚本实现类似于设置了stick位的效果 shell, python, perl等脚本.程序不能取得sui ...
- u盘linux需要多大内存,linux下获取硬盘、内存、U盘大小及使用大小
/* * 获取硬盘大小;内存大小;usb大小 */ #ifndef SYSINFOGET_H #define SYSINFOGET_H #include //磁盘信息 #include #includ ...
- linux 进程内存排行,linux下获取占用CPU/内存资源最多的10个进程[转自亿唐网]
inux下获取占用CPU资源最多的10个进程,可以使用如下命令组合: ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head linux下获取占用内 ...
最新文章
- 第十六届全国大学生智能汽车竞赛总决赛 AI视觉组线上赛细则草案 - 初步版本
- openstack queens 版本 linux bridge起不来的解决办法
- Ansible基础入门
- labview叠加白噪声_强化学习中Ornstein-Uhlenbeck噪声是鸡肋吗?
- c语言全排列算法_一文学会回溯搜索算法解题技巧
- adams2015安装教程
- commons-lang3之StringUtils
- faceapp怎么合成未来宝宝照片_宝宝出生后,爸爸们应该如何宣布喜讯,各种官宣文案孕妈赶紧收藏...
- E - 连连看 HDU - 1175(思维的深搜)
- golang go语言_在7小时内学习快速简单的Go编程语言(Golang)
- laravel $request 多维数组取值_3分钟短文:Laravel的“南天门”,过滤掉七七八八的数据...
- 小程序入门学习01--Hello World
- Mac下新安装的MySQL无法登陆root用户解决方法
- 转载:不投简历,如何获得月薪2万的工作
- 1.Tow Sum(两数和)
- 简历制作器App隐私政策
- 实时云渲染+虚拟仿真实验解决方案
- 基础篇:6.9)形位公差-检测方法Measurement
- 【实践】人体红外传感器
- CSS3画三角形、菱形、平行四边形