在支持时间戳计数器( TSC )处理器中,Linux提供了使用TSC的高精度计时器选项。据我所知,TSC是一个可以读取的寄存器,但不提供以配置的速率中断CPU的选项。因此,对于定时器,Linux中的中断生成仍然必须依赖于HZ值通常设置为1000或250的I/ or (在x86上)。即使TSC提供微秒粒度的时间戳,根据HZ值的不同,计时器
Linux高分辨率计时器似乎开始在每个线程的范围内计数,而不是应用程序中的全局计数。
我试过使用CLOCK_PROCESS_CPUTIME_ID,但它给了我线程行为吗?CLOCK\_PROCESS\_CPUTIME\_ID (since Linux 2.6.12) High-resolution per-process timer from theCLOCK\_THREAD\_CPUTIME\_ID (since Linux 2.6.12)