如何在一个程序中使用sleep()和timer?

时间:2014-09-17 08:36:04

标签: c linux timer

我想在一个程序中使用sleep()和计时器。

但是当我在程序中使用setitimer()时,sleep()会失去效力。

如何在不干扰sleep()阻止主线程的情况下制作计时器?

1 个答案:

答案 0 :(得分:1)

来自man sleep

  

sleep()可以使用SIGALRM实现;混合呼叫警报(2)和睡眠()是一个坏主意。

改为使用nanosleep

  

与sleep(3)和usleep(3)相比,nanosleep()具有以下优点:它为指定睡眠间隔提供了更高的分辨率; POSIX.1明确指出它不与信号交互;它使恢复睡眠的任务更容易被信号处理程序中断。