我想使用timerfd_create
创建计时器,但我不知道如何检查到期日。
有人可以帮我一个简单的例子吗?
我知道如何使用settime
创建和填充,如我之前的计时器问题所示,但如何检查timerfd_create
的到期日期?我知道它通过文件描述符通知它到期了。但是怎么检查呢?
提前致谢。
答案 0 :(得分:1)
您可以使用select
或epoll
来监控文件描述符。这是一个例子:
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 */
}