首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当文件正在使用时,使用PHP删除(取消链接)或创建(fwrite)文件

问当文件正在使用时,使用PHP删除(取消链接)或创建(fwrite)文件
EN

Stack Overflow用户
提问于 2013-07-11 19:07:38
回答 1查看 515关注 0票数 0

我正在运行一个带有灯系统的网站。

内容来自数据库。

出于缓存的目的,我在我的via服务器上创建文件(包含可缓存的内容)(通过fwrite())。

每隔一段时间,我就会删除缓存文件(通过unlink())。

文件的创建和删除是通过cronjob完成的。

我的问题是:当我网站的访问者当前正在浏览(=从when服务器请求)文件A.php,而我正在尝试写入或删除这个文件A.php时,会发生什么情况。

准确地说:如果我的cronjob发出unlink()命令,同时将文件提供给用户,会发生什么情况。

这会产生竞争条件吗?

我知道如何从unlink和fwrite操作中检索状态,那么只要这些函数返回false (无法删除/写入),我可以在unlink/fwrite上循环吗?

期待阅读您的意见/答案!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-11 19:09:40

是的,这显然会造成竞争状况。从job服务器请求文件和从cron作业中删除文件是两个独立的过程,您无法知道其中一个正在对文件做什么。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17591772

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档