gpt4 book ai didi

php - 尝试读取用 file_put_contents 和 LOCK_EX 锁定的文件的脚本是等待还是失败?

转载 作者:可可西里 更新时间:2023-11-01 13:32:27 32 4
gpt4 key购买 nike

一个简单的问题。尝试读取使用 LOCK_EXfile_put_contents 锁定的文件的脚本是否会等到文件解锁或读取失败并继续?

最佳答案

简单的答案是它们不会阻塞但会失败。 Groovepig 的回答是正确的,但冗长到模棱两可的地步,而马里奥的评论是该线程中最有帮助的“答案”。

如果 J lock_ex-opens FILE.TXT,则 K 将收到来自 file_put_contents 的错误消息,直到 J 解锁文件,例如,通过 J 执行的锁定 file_put_contents 调用完成。

在这之后 K 将能够 file_put_contents 文件。

作为对那些质疑锁定追加操作有效性的人的回应,虽然追加可能很快,如果 K 写入 FILE.TXT 而 J 的解锁写操作已经开始,行为是未定义的,但 J 的追加可能不会被追加,可能以错误的顺序被追加,或者 K 的 ftell 可能导致 Ks 写在 J 刚刚写的中间。

追加速度很快,发生冲突的可能性要小得多,但它们仍然会发生,这可能意味着数据有意义的文件与数据空洞的文件之间的区别。

关于php - 尝试读取用 file_put_contents 和 LOCK_EX 锁定的文件的脚本是等待还是失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20304843/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com