1
1
你问题的答案取决于你的意思。如果您询问是否可以检测到磁盘上的物理操作(查找、读取或写入),答案是“否”。磁盘具有磁盘缓存,以性能的名义对您隐藏这些操作。您可以使用上面的机制来判断何时更改了缓存,但在执行物理操作时不能判断。 这就是为什么我们有日志文件系统。但是,即使使用日志记录,如果发生灾难性故障并且无法保存缓存,也有可能发生实际数据丢失。 在上述方法中,我使用了filesystemwatcher,它工作得非常好。您可以选择您感兴趣的事件,当发生文件事件时,您的程序将收到一个程序事件的通知。 请注意,至少在windows/c下,事件是在一个单独的线程上发生的,因此您必须使用委托来向发生事件的主(或任何)线程发出信号。 |
2
1
查看以下来自msdn的示例: Change Notify Watcher Sample |
3
1
您需要依赖特定的OS API,这些API可以在C编程语言中使用。 |
4
1
正如其他人在这里所说,没有平台独立/C标准方式。 在Linux上,您可以使用 inotify 应用程序编程接口。有 a tutorial on IBM developerworks . |
7BeholdeR7 · 文件夹的重量超过其中的文件(六倍) 2 年前 |
ilteris · 为什么程序在fscanf后崩溃 2 年前 |
Peaceful · 使用fscanf读取C中具有未知行数的文件 2 年前 |
NOCi · 如何将Tensorflow的结果记录到CSV文件 2 年前 |
Oakzeh · 如何在字符串索引之前读取文件并删除字符 2 年前 |