gpt4 book ai didi

c - 在繁忙的目录上使用 inotify

转载 作者:行者123 更新时间:2023-11-30 17:31:03 26 4
gpt4 key购买 nike

我正在繁忙的目录上使用inotify(文件不断生成)。我希望捕获所有这些事件的 IN_CLOSE_WRITE 事件。

所以我尝试了这样的事情。

fd = inotify_init();
inotify_add_watch(fd, DIR_PATH, IN_CLOSE_WRITE);
while(1) {
len = read(fd, buff, INOTIFY_EVENT_SIZE);
if (len < 0) {
PRINT_ERROR("Read failed. Keep watching.\n");
continue;
}
/* Process the event */
}

此方法无法捕获我处理首次读取事件时生成的事件。不过我预计它会起作用。

我应该如何处理这个问题?如果您发现缺少某些内容,请告诉我。

最佳答案

我正在等待 IN_CLOSE_WRITE,但我目录中的文件实际上是从差异位置移动的。所以该事件没有被捕获。我将事件桅杆更改为 IN_MOVE,效果很好。

关于c - 在繁忙的目录上使用 inotify,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24816535/

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