gpt4 book ai didi

linux - 在多线程程序中为 Inotify 添加 watch

转载 作者:IT王子 更新时间:2023-10-29 00:59:07 27 4
gpt4 key购买 nike

我想使用 inotify 来监控我的 C 程序中的一些文件。

我想知道让一个线程从 inotify 描述符(由 inotify_init 返回的)读取是否安全,从而阻塞直到某个事件发生,在此等待期间可能会添加新的在其他线程等待期间使用 inotify_add_watch 将文件发送到 watch 队列。

我是否需要同步这些操作或者这样做是否安全?

最佳答案

没有确切的答案,但我从经验中知道,如果不触发正在使用 inotify 的线程中的 read(),您甚至无法在另一个线程中打开文件。我记得读过你需要使用 inotify_init1() 和 IN_CLOEXEcflags来允许其他线程中的文件 io。不过,我不确定这是否意味着您实际上可以同时在多个线程中使用 inotify。

关于linux - 在多线程程序中为 Inotify 添加 watch ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11070165/

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