使用 pyinotify 在目录中创建假脱机的最佳方法是啥?
Posted
技术标签:
【中文标题】使用 pyinotify 在目录中创建假脱机的最佳方法是啥?【英文标题】:What is the best way to make a spool in a directory with pyinotify?使用 pyinotify 在目录中创建假脱机的最佳方法是什么? 【发布时间】:2012-01-31 01:01:07 【问题描述】:我试图在创建目录时将目录中的每个文件移动到另一个文件。也许我可以干净地停止守护进程(pyinotify 实例运行),并继续在 orig/spool 目录中创建原始文件。
我想在守护进程再次启动后进行处理。也许我可以利用 inotify 内核队列?
提前致谢
【问题讨论】:
【参考方案1】:您并不想在创建它们时移动它们,而是在它们关闭时移动它们。一旦它们被关闭(并且没有人有任何打开的文件句柄),您可以认为它们“完整”并且您可以毫无意外地移动它们。
如果您寻找“close_write”事件,您可能会很好。 (虽然这并不能保证文件包含数据或新数据,但您必须验证 modify->close_write 事件。但 99.99% 的情况下,close_write 会完成这项工作。
【讨论】:
是的,这都是真的,我会捕捉到 close_write 事件。我的问题是在启动序列中,在整个树中循环寻找守护进程未运行时创建(写关闭)的文件。以上是关于使用 pyinotify 在目录中创建假脱机的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章