博客
关于我
《Linux系统调用:clock_getcpuclockid,pthread_getcpuclockid》
阅读量:234 次
发布时间:2019-03-01

本文共 634 字,大约阅读时间需要 2 分钟。

一、介绍

这组函数用于获取指定进程或线程的CPU时钟ID值,分别是clock_getcpuclockidpthread_getcpuclockid。前者用于获取进程的CPU时钟ID,后者则用于获取线程的CPU时钟ID。在编译时需要加上相应的标志选项,-lrt用于clock_getcpuclockid-pthread用于pthread_getcpuclockid

尽管这些函数的精度可以达到纳秒级别,但实际系统的精度可能因实现而异。因此,建议使用clock_getres来获取系统时钟的精度。返回的错误信息请参考 errno 错误值的相关文档。

二、接口函数

以下是相关接口的实现和说明:

#include 
int clock_getcpuclockid(pid_t pid, clockid_t *clock_id);

参数

  • thread:进程ID
  • clock_id:返回的时钟ID值

返回值

成功返回0,错误返回非零的errno值

#include 
#include
int pthread_getcpuclockid(pthread_t thread, clockid_t *clock_id);

参数

  • thread:线程ID
  • clock_id:返回的时钟ID值

返回值

成功返回0,错误返回非零的errno值
注意:如果系统不支持每线程CPU时钟ID,可能会返回ENOENT错误。

转载地址:http://xhkt.baihongyu.com/

你可能感兴趣的文章
Spring 框架之 AOP 原理深度剖析
查看>>
Pandas:如何按列元素的组合分组,以指示基于不同列的值的同现?
查看>>
Pandas:将一列与数据帧的所有其他列进行比较
查看>>
PANDA:基于多列对数据表的行运行计算,并将输出存储在新列中
查看>>
PandoraFMS 监控软件 SQL注入漏洞复现
查看>>
PandoraFMS 监控软件 任意文件上传漏洞复现
查看>>
Papyrus项目常见问题解决方案
查看>>
Parallel.ForEach使用示例
查看>>
Parallel.ForEach的基础使用
查看>>
parallels desktop for mac安装虚拟机 之parallelsdesktop密钥 以及 parallels desktop安装win10的办公推荐可以提高办公效率...
查看>>
parallelStream导致LinkedList遍历时空指针的问题
查看>>
Parameter ‘password‘ not found. Available parameters are [md5String, param1, username, param2]
查看>>
ParameterizedThreadStart task
查看>>
Spring security之管理session
查看>>
paramiko模块
查看>>
param[:]=param-lr*param.grad/batch_size的理解
查看>>
spring mvc excludePathPatterns失效 如何解决spring拦截器失效 excludePathPatterns忽略失效 拦截器失效 spring免验证拦截器不起作用
查看>>
Spring Cloud 之注册中心 EurekaServerAutoConfiguration源码分析
查看>>
Parrot OS 6.2 重磅发布!推出全新 Docker 容器启动器
查看>>
Parrot OS 6.3 发布!全面提升安全性,新增先进工具,带来更高性能
查看>>