我需要使用文件描述符监视常规文件上的事件。我正在使用 CentOS 4.1 和内核版本 2.6.18.128 的机器上工作。
在意识到使用 无法监视常规文件后epoll
,我发现使用 可以完成此任务inotify
。但是,我在其他地方读到,所需的库接口inotify
已在 2.4 版中添加到 glibc,并且我的机器安装了 2.3.4 版。所以我的内核通过 not glibc 支持 inotify。不幸的是,我无法将glibc 更新到较新的版本,因为它会破坏项目的某些其他部分。
所以我的问题是:
- 我还能用它
inotify
来监控常规文件吗?我可以获取更新版本的 glibc 并将其放在本地文件夹(相对于我的代码),在我的 Makefile 中包含路径并使用与关联的调用inotify
吗?如果是这样,我会遇到什么样的问题? - 另一种方法是使用
fstat
,通过跟踪结构的st_mtime
成员struct stat
。采取这条路线有什么注意事项吗?
如果我的问题表明对这些概念缺乏理解,请在我刚开始使用它们时多多包涵。