flock lock ex php,php – flock有可能用LOCK_EX返回false吗?

标签:php

By default, this function will block until the requested lock is

acquired

在下面我发现了以下示例代码:

$fp = fopen("/tmp/lock.txt", "r+");

if (flock($fp, LOCK_EX)) { // acquire an exclusive lock

ftruncate($fp, 0); // truncate file

fwrite($fp, "Write something here\n");

fflush($fp); // flush output before releasing the lock

flock($fp, LOCK_UN); // release the lock

} else {

echo "Couldn't get the lock!";

}

fclose($fp);

?>

但有没有任何情况下脚本实际上会返回“无法锁定!”?我以为它一直等到文件lock.txt解锁.如果文件永远不会被解锁,那么脚本会永远等待,对吧?

此外,我发现这个答案解释了unix上的独占锁和共享锁之间的区别:https://stackoverflow.com/a/11837714/2311074

这四个规则是否也适用于PHP中的flock(例如“如果已经存在一个或多个共享锁,则无法获得独占锁”)?

解决方法:

是的,阻止flock可以返回false.

如果提供的资源不支持锁定,则会发生这种情况

样本甚至在文档中提供

May only be used on file pointers returned by fopen() for local files,

or file pointers pointing to userspace streams that implement the

streamWrapper::stream_lock() method.

因此,如果您尝试锁定ftp或http资源,您将得到错误,同样会用于某些包装器,例如zlib或phar.

flock() is not supported on antiquated filesystems like FAT and its

derivates and will therefore always return FALSE under these

environments.

标签:php

来源: https://codeday.me/bug/20190627/1308714.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/428429.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++如何实现DNS域名解析转

C如何实现DNS域名解析 这片文章介绍了C如何实现DNS域名解析,还有对相关技术的介绍,代码很详细,需要的朋友可以参考下一、概述 现在来搞定DNS域名解析,其实这是前面一篇文章C实现Ping里面的遗留问题,要干的活是ping的过程中画红线的…

PHP程序中时间戳,php 时间戳常用代码

echo strtotime(date(Y-m-d));获取明天凌晨的时间戳代码:echo strtotime(date(Y-m-d,strtotime(1 day)));附上测试代码:echo strtotime(2012-11-2);echo strtotime(2012-11-2 00:00:00);echo strtotime(date(Y-m-d)),;echo date(Y-m-d H:i:s,strtotime(d…

Echarts入门

引用Echarts 方法1&#xff1a;下载echarts.js后&#xff0c;进行引用&#xff0c;如 <script src"echarts.min.js"></script> 方法2&#xff1a;在线引用&#xff0c;在线网址可为 http://echarts.baidu.com/dist/echarts.min.js R语言中有相应的R包…

高等代数第3版下 [丘维声 著] 2015年版_2020年成人高考 专升本 高等数学复习攻略...

成人高考的高等数学考试按照专业属性分为理工类和经管类&#xff0c;高等数学一直是成考中的比较不好拿分的科目&#xff0c;也是大家复习备考的难点。今天&#xff0c;小编给大家分享一些答题技巧和必备的公式&#xff0c;帮助大家一起来搞定高等数学&#xff0c;希望这份资料…

java虚拟机10.内存模型与线程

多任务处理在现代计算机操作系统中是一项必备的功能&#xff0c;让计算机同时去做几件事情&#xff0c;不仅是因为计算机的运算能力强大了&#xff0c;更重要的原因是计算机的运算速度与它的存储和通信子系统速度的差距太大&#xff0c;大量的时间都花费在磁盘I/O&#xff0c;网…

php仿微信上传图片压缩,PHP仿微信多图片预览上传实例代码

生产图片区域&#xff0c;上传按钮#btn可替换自己想要的图片plupload上传var uploader new plupload.Uploader({//创建实例的构造方法runtimes: html5,flash,silverlight,html4, //上传插件初始化选用那种方式的优先级顺序browse_button: btn, // 上传按钮url: "ajax.php…

笔记本电脑如何保养_嘉兴专业笔记本电脑喷漆加工厂价格实惠

嘉兴专业笔记本电脑喷漆加工厂价格实惠 [xznugcbx]不宜大量储存或久存&#xff0c;做好通风设施。自喷漆如果大量泄露操作人员应迅速撤离泄露污染区人员到安全区域&#xff0c;因罐内的二甲醚气体具有轻微的毒性&#xff0c;并将污染区域进行隔离&#xff0c;罐内的气体跟空气中…

css 滤镜之AlphaImageLoader

CreateTime--2017年12月25日17:05:37 Author:Marydon ie滤镜特效之AlphaImageLoader 作用&#xff1a; 用于设置背景图片特效样式 使用条件&#xff1a; IE8及以下版本不支持属性background-size&#xff0c;可以使用AlphaImageLoader来代替 语法&#xff1a; filter : progid:…

java font属性,css font-family属性怎么用

原标题&#xff1a;css font-family属性怎么用css font-family属性怎么用&#xff1f;属性定义及使用说明font - family属性指定一个元素的字体。font-family 可以把多个字体名称作为一个"回退"系统来保存。如果浏览器不支持第一个字体&#xff0c;则会尝试下一个。有…

企业是否应该实现对客户需求的快速响应_互联网企业的数据化迭代和数据化应用...

数字时代&#xff0c;品牌和消费者正经历数字化的变革&#xff0c;谁能真正实现企业数据赋能&#xff0c;谁就是残酷市场竞争下的优胜者。企业需要加快实现全数据治理工具的研发&#xff0c;用数据推动企业发展。本文作者结合案例分享了关于企业数字化的方法论与感知响应模型&a…

jmeter自定义并发用户数图形插件介绍

Stepping Thread Group马上要被废弃了&#xff0c;废弃原因不知道&#xff0c;官方推荐使用 BlazeMeter Inc.公司贡献的插件Concurrency Thread Group&#xff0c;配合 Throughput Shaping Timer使用&#xff0c;可以达到相同的自定义并发用户的图形效果 1、stepping插件地址 …

matlab里数据类型转换,Matlab数据类型及转换(Matlab data type and conversion).doc

Matlab数据类型及转换(Matlab data type and conversion)Matlab数据类型及转换(Matlab data type and conversion)Matlab data type and conversion (2011-05-1615:10:59)Label: miscellaneous: memosIn Matlab, there are 15 basic data types, mainly integer, floating poin…

windows server 触屏_宜昌触屏万能蒸烤箱价格-华春新能源有限公司

首页 > 新闻列表 > 浏览文章发布时间&#xff1a;2020-10-27 08:47:06 浏览量&#xff1a; 5导读&#xff1a;华春新能源有限公司为您提供宜昌触屏万能蒸烤箱价格的相关知识与详情&#xff1a; 所述水箱与水较少时的水位达到一个比预定热气体电磁阀被打开时系统压力平衡…

matlab s参数转换y参数,晶体管的h参数、y参数和S参数(修订版,包含使用Matlab将S参数换算为y参数的方法)...

笔者注&#xff1a;文中“晶体管”指普通双极型晶体管(BJT)&#xff0c;“场效应管”指场效应晶体管(FET)。目前小功率硅晶体管的特征频率(fT)一般都在100MHz以上&#xff0c;既可用于低频小信号放大器&#xff0c;也可用于高频小信号放大器。同样一只晶体管&#xff0c;用于低…

3ds Max制作碗实例教程

一、 碗的建模。模型的结果如图WB—1所示&#xff1a; 图WB—1 1. 创建圆柱&#xff0c;并调节参数&#xff0c;转换到多边形&#xff0c;最终的结果图WB—2所示&#xff1a; 图WB—2 2.使用Inset&#xff08;插入&#xff09;插入一个面&#xff0c;再次执行Extrude&#xff0…

unity hub服务器无响应_累积更新KB4541335反馈称无法安装 出现无响应情况

几天前微软面向Windows 10 Version 1903/Version 1909功能更新&#xff0c;发布了累积更新KB4541335&#xff0c;主要改善了开始菜单和文件管理器。不过部分用户在Feedback Hub上反馈无法安装该更新&#xff0c;过程中会收到错误信息。用户反馈称会收到“2020-03 Cumulative Up…

php访问mysql函数吗,PHP访问MySQL数据库函数简介

PHP访问MySQL数据库函数简介PHP访问MySQL数据库函数简介1. 进行数据库连接连接数据库服务器&#xff0c;就是客户端向己运行的数据库服务器发出连接请求&#xff0c;成功以后就可以对数据库进行相应操作&#xff0c;由于用户的权限不同&#xff0c;所能进行的操作也不一样。PHP…

工具资源 Java并发编程:CountDownLatch、CyclicBarrier和 Semaphore

内容转载自&#xff1a;http://www.importnew.com/21889.html#comment-636799 转载于:https://www.cnblogs.com/qinshou/p/8119693.html

电脑二维码怎么扫描_扫描模组方案是如何满足多种应用场景需求?

随着自动识别技术的发展&#xff0c;扫描模组逐渐成为各个领域上的配套&#xff0c;然而很多人还停留在“主扫”的观念上&#xff0c;殊不知如今的“被扫”更受人们的欢迎&#xff0c;即采用硬件解码的方式去识读条形码或二维码。远景达作为扫描模组方案公司&#xff0c;在不断…

php 废弃,PHP 7 废弃特性

PHP 7 废弃特性PHP4 风格的构造函数在 PHP4 中类中的函数可以与类名同名&#xff0c;这一特性在 PHP7 中被废弃&#xff0c;同时会发出一个 E_DEPRECATED 错误。当方法名与类名相同&#xff0c;且类不在命名空间中&#xff0c;同时PHP5的构造函数(__construct)不存在时&#xf…