gpt4 book ai didi

c++ - 是否有异步方式知道文件已更改?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:25:11 25 4
gpt4 key购买 nike

我想异步监视文件的任何更改。那就是当文件被修改/删除时,我想在我的程序中有一个回调(可能来自内核)。该文件只是一个纯文本文件。我知道可以使用轮询机制来做到这一点,但我正在寻找一种基于事件的解决方案。我阅读了有关 inotify 的信息,但看起来它需要修补我的内核。

如果解决方案符合 POSIX 标准,那就更好了。

最佳答案

Inotify早在 2005 年就被合并到 Linux 内核中,所以除非您使用的是非常的旧系统,否则您应该能够开箱即用。

我认为不存在针对此的 POSIX 兼容解决方案。 Mac OS X 有 FSEvents .

同时检查 man page用于 inotify。

编辑:

不知道您的限制和/或要求,但还有 GFileMonitor如果你使用 Glib(C++ 绑定(bind)是 glibmm )和 QFileSystemWatcher你用的是Qt吗?这些可能对跨平台更友好。

关于c++ - 是否有异步方式知道文件已更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6946079/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com