如何在timerfd_create中检查计时器到期时间

时间:2011-05-20 08:22:27

标签: c linux timer

我想使用timerfd_create创建计时器,但我不知道如何检查到期日。

有人可以帮我一个简单的例子吗?

我知道如何使用settime创建和填充,如我之前的计时器问题所示,但如何检查timerfd_create的到期日期?我知道它通过文件描述符通知它到期了。但是怎么检查呢?

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以使用selectepoll来监控文件描述符。这是一个例子:

struct epoll_event event;
efd = epoll_create(2);

event.data.fd = timer_fd;
event.events = EPOLLIN;
epoll_ctl(efd, EPOLL_CTL_ADD, timer_fd, &event);

while (1) {
    struct epoll_event revent;
    epoll_wait(efd, &revent, 1, -1);
    /* revent can now be used */
}