有没有一种快速的方法(即最大限度地减少回答时间)来查明文件是否在 Linux 上打开?
假设我有一个进程在目录中写入大量文件,另一个进程读取这些文件一旦它们完成写入,后一个进程能否知道文件是否仍在写入到以前的过程?
如果可能,基于 Python 的解决方案将是理想的。
注意:我知道我可以使用基于 FIFO/队列的解决方案,但我正在寻找其他东西。
最佳答案
您当然可以使用 Linux 的 INOTIFY 功能,但更安全的做法是避免这种情况:让写入进程创建读取进程肯定会忽略的文件(比如 data.tmp)。当作者完成后,它应该为读者重命名文件(比如.dat)。重命名操作保证不会有误会。
关于python - 快速知道文件是否在 Linux 上打开的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11411428/