CZMQ
手册页zfile
解释zfile_stable
为:
// 检查文件是否“稳定”
CZMQ_EXPORT bool zfile_stable (const char *filename);
稳定的意义是什么?什么时候说文件是稳定的?
在这种情况下,稳定的定义是如果文件超过 1s 旧。
见https://github.com/zeromq/czmq/blob/master/src/zfile.c#L115
这里的用例是使用文件在进程之间发出信号。示例应用程序是 FileMQ,它将新文件发布给订阅者。但是没有明显的方法可以知道何时“创建”了文件。我知道的两个解决方案是创建第二个“信号”文件,这很笨拙,或者使用这个“文件是否在最后一秒被修改”算法。
假设您将照片复制到一个目录中,并且并行过程正在检测新照片并将它们上传到服务器。在大照片上,修改日期会不断变化,直到稳定为止。然后,上传照片是安全的。
希望有帮助。