C中的阻塞/非阻塞计时器

set*_*thu 2 c timer

这可能是一个经常重复的问题,对不起再把它带回来.我无法找到解决方案:(.我正在Linux中用C语言编写VM监控代码.我希望每隔10秒获取所有VM的读写次数.是否有任何C库提供此功能(定时器)单独),阻塞/非阻塞计时器无所谓.谢谢!!

此致,Sethu

You*_*You 7

对于非阻塞计时器(在POSIX系统上),请使用alarm:

int main(void) {
  signal(SIGALRM, monitor);
  monitor(0);
  /* ... */
}

void monitor(int signal) {
  /* ... */
  alarm(10);
}
Run Code Online (Sandbox Code Playgroud)

但是对于阻塞计时器,请sleep按照lalli的描述使用.