php使用flock阻塞寫入文件和非阻塞寫入文件的實例講解
更新時間:2017年07月10日 09:48:10 投稿:jingxian
下面小編就為大家?guī)硪黄猵hp使用flock阻塞寫入文件和非阻塞寫入文件的實例講解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
阻塞寫入代碼:(所有程序會等待上次程序執(zhí)行結(jié)束才會執(zhí)行,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阻塞寫入文件和非阻塞寫入文件的實例講解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
laravel利用中間件做防非法登錄和權(quán)限控制示例
今天小編就為大家分享一篇laravel利用中間件做防非法登錄和權(quán)限控制示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10
Zend Framework動作助手(Zend_Controller_Action_Helper)用法詳解
這篇文章主要介紹了Zend Framework動作助手(Zend_Controller_Action_Helper)用法,詳細(xì)分析了動作助手Zend_Controller_Action_Helper功能,定義,使用方法與相關(guān)實現(xiàn)代碼,需要的朋友可以參考下2016-03-03

