博客
关于我
《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/

你可能感兴趣的文章
oracle 行列转换
查看>>
oracle 行转列
查看>>
Oracle 表
查看>>
oracle 课堂笔记
查看>>
Oracle 返回结果集的 存储过程
查看>>
Oracle 递归
查看>>
Oracle 递归函数与拼接
查看>>
oracle 逻辑优化,提升高度,综合SQL上下文进行逻辑优化
查看>>
oracle 闪回关闭,关闭闪回即disable flashback的操作步骤
查看>>
oracle 限制用户并行,insert /*parallel */ 到不同用户,并行起不来的问题
查看>>
oracle--用户,权限,角色的管理
查看>>