2

我的邮件服务器每分钟写入一个文件,这很好,我很高兴它这样做。

但是在我的 WebServer 上,我想检查当前是否正在写入该文件,如果没有,则向用户显示下载链接。

有什么办法可以做到这一点。。

例如:运行一个循环,直到文件不再被写入,然后显示文件的下载链接?

我已经阅读过,flock()但我认为这不会有帮助,因为另一个进程/操作系统实际上正在创建文件!

4

2 回答 2

1

您的编写脚本/应用程序/进程应该写入锁定文件(就像filename.lock在开始写入主文件之前一样的空文件,然后在完成后将其删除。这是常规锁定方法,但您的脚本只需要检查是否filename.lock存在。如果是,则正在写入文件。

于 2013-04-09T16:29:31.780 回答
0

如果当前没有其他人正在写入,您只能获取读取或写入锁。你不应该这样做。

此外,当用户下载文件时,可能同时文件已更改。你确定你对你想要的东西有正确的心理形象吗?

于 2013-04-09T16:29:45.860 回答