php使用flock阻塞写入文件和非阻塞写入文件的实例讲解

 更新时间:2017年07月10日 09:48:10   投稿:jingxian  
下面小编就为大家带来一篇php使用flock阻塞写入文件和非阻塞写入文件的实例讲解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

阻塞写入代码:(所有程序会等待上次程序执行结束才会执行,30秒会超时)

<?php 
$file = fopen("test.txt","w+"); 
 
$t1 = microtime(TRUE); 
if (flock($file,LOCK_EX)) 
{ 
 sleep(10); 
 fwrite($file,"Write something"); 
 flock($file,LOCK_UN); 
 echo "Ok locking file!"; 
} 
else 
{ 
 echo "Error locking file!"; 
} 
 
fclose($file); 
 
$t2 = microtime(TRUE); 
echo sprintf("%.6f",($t2-$t1)); 

非阻塞写入代码:(只要文件被占用,则显示Error locking file!)

<?php 
$file = fopen("test.txt","a+"); 
 
$t1 = microtime(TRUE); 
if (flock($file,LOCK_EX|LOCK_NB)) 
{ 
 sleep(10); 
 fwrite($file,"Write something"); 
 flock($file,LOCK_UN); 
 echo "Ok locking file!"; 
} 
else 
{ 
 echo "Error locking file!"; 
} 
 
fclose($file); 
 
$t2 = microtime(TRUE); 
echo sprintf("%.6f",($t2-$t1)); 

以上这篇php使用flock阻塞写入文件和非阻塞写入文件的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • YII2框架中验证码的简单使用方法示例

    YII2框架中验证码的简单使用方法示例

    这篇文章主要介绍了YII2框架中验证码的简单使用方法,结合实例形式分析了Yii2框架验证码的基本创建、使用方法及操作注意事项,需要的朋友可以参考下
    2020-03-03
  • thinkPHP模板中函数的使用方法示例

    thinkPHP模板中函数的使用方法示例

    这篇文章主要介绍了thinkPHP模板中函数的使用方法,结合实例形式对比分析了php函数的单独使用与thinkPHP模板中php函数的相应使用技巧,需要的朋友可以参考下
    2016-11-11
  • CI框架整合smarty步骤详解

    CI框架整合smarty步骤详解

    这篇文章主要介绍了CI框架整合smarty步骤,结合实例形式详细分析了CI框架中Smarty的配置技巧与调用方法,需要的朋友可以参考下
    2016-05-05
  • PHP利用DWZ.CN服务生成短网址

    PHP利用DWZ.CN服务生成短网址

    这篇文章主要介绍了PHP利用DWZ.CN服务生成短网址,小编觉得挺不错的,现在分享给大家,也给大家做个参考。
    2019-08-08
  • PHP实现类似题库抽题效果

    PHP实现类似题库抽题效果

    这篇文章主要介绍了PHP实现类似题库抽题效果,通过一个简单的小例子给大家介绍的非常详细,需要的朋友参考下吧
    2018-08-08
  • thinkPHP实现签到功能的方法

    thinkPHP实现签到功能的方法

    这篇文章主要介绍了thinkPHP实现签到功能的方法,实例分析了mysql数据表的构造及thinkPHP签到功能的具体实现技巧,需要的朋友可以参考下
    2017-03-03
  • laravel利用中间件做防非法登录和权限控制示例

    laravel利用中间件做防非法登录和权限控制示例

    今天小编就为大家分享一篇laravel利用中间件做防非法登录和权限控制示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • Zend Framework动作助手(Zend_Controller_Action_Helper)用法详解

    Zend Framework动作助手(Zend_Controller_Action_Helper)用法详解

    这篇文章主要介绍了Zend Framework动作助手(Zend_Controller_Action_Helper)用法,详细分析了动作助手Zend_Controller_Action_Helper功能,定义,使用方法与相关实现代码,需要的朋友可以参考下
    2016-03-03
  • PHP实现简单注册登录详细代码

    PHP实现简单注册登录详细代码

    这篇文章主要介绍了PHP实现简单注册登录详细全部代码实例讲解,代码讲解的很清楚,对这方面不懂的初学者可以照着练习研究下
    2021-01-01
  • 深入剖析PHP中printf()函数格式化使用

    深入剖析PHP中printf()函数格式化使用

    下面小编就为大家带来一篇深入剖析PHP中printf()函数格式化使用。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-05-05

最新评论