最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

簡單談?wù)?php 文件鎖

 更新時間:2017年02月19日 16:54:52   作者:hlcc  
PHP出現(xiàn)文件鎖與mysql表鎖有大概想的用法,就是同一時間只能讓一個人操作,這樣就避免了同時有多個人操作同一文件,這樣導(dǎo)致數(shù)據(jù)丟失的情況了,下面我來給大家介紹PHP文件鎖用法。

鎖機制之所以存在是因為并發(fā)導(dǎo)致的資源競爭,為了確保操作的有效性和完整性,可以通過鎖機制將并發(fā)狀態(tài)轉(zhuǎn)換成串行狀態(tài)。作為鎖機制中的一種,PHP的文件鎖也是為了應(yīng)對資源競爭。假設(shè)一個應(yīng)用場景,在存在較大并發(fā)的情況下,通過fwrite向文件尾部多次有序的寫入數(shù)據(jù),不加鎖的情況下會發(fā)生什么?多次有序的寫入操作相當(dāng)于一個事務(wù),我們此時需要保證這個事務(wù)的完整性。

如果我們有兩個程序同時向某個文件中寫入數(shù)據(jù),為了保證數(shù)據(jù)的完整性,可以加一個文件鎖,先讓程序1執(zhí)行,程序1執(zhí)行完后,解鎖,再讓程序2執(zhí)行。實現(xiàn)代碼如下:

$fp = fopen('test.txt',"a");
$count = 10;
if (flock($fp, LOCK_EX)) {
for($i=1;$i<$count;$i++){
fwrite($fp, 'text2_'.$i."rn");
echo "test2".date('h:i:s') . "
";
sleep(1); 
echo "test2".date('h:i:s');
}
flock($fp , LOCK_UN);
}else{
echo "Couldn't lock the file !";
}
fclose($fp);

相關(guān)文章

  • PHP+redis實現(xiàn)的購物車單例類示例

    PHP+redis實現(xiàn)的購物車單例類示例

    這篇文章主要介紹了PHP+redis實現(xiàn)的購物車單例類,涉及php連接、操作redis數(shù)據(jù)庫及購物車功能相關(guān)定義與使用技巧,需要的朋友可以參考下
    2019-02-02
  • Ajax+PHP 邊學(xué)邊練之四 表單

    Ajax+PHP 邊學(xué)邊練之四 表單

    通過上一篇文章已經(jīng)了解到如何利用Ajax和PHP對數(shù)據(jù)庫進行數(shù)據(jù)讀取,這樣可以動態(tài)的獲取到數(shù)據(jù)庫的最新數(shù)據(jù)。本篇則繼續(xù)介紹通過表單(Form)向數(shù)據(jù)庫中寫入數(shù)據(jù)。
    2009-11-11
  • php microtime獲取浮點的時間戳

    php microtime獲取浮點的時間戳

    看到別人的源碼中用microtime(true),查了下手冊,原來從PHP 5.0.0 開始,microtime增加了這個參數(shù)。
    2010-02-02
  • php對大文件進行讀取操作的實現(xiàn)代碼

    php對大文件進行讀取操作的實現(xiàn)代碼

    在php中,對于文件的讀取時,最快捷的方式莫過于使用一些諸如file、file_get_contents之類的函數(shù),簡簡單單的幾行代碼就能很漂亮的完成我們所需要的功能。但當(dāng)所操作的文件是一個比較大的文件時,這些函數(shù)可能就顯的力不從心, 下面將從一個需求入手來說明對于讀取大文件時,常用的操作方法
    2013-01-01
  • PHP cron中的批處理

    PHP cron中的批處理

    如果 Web 應(yīng)用程序中的一個特性需要超過 1 秒或 2 秒才能完成,那么應(yīng)該怎么辦?需要某種離線處理解決方案。學(xué)習(xí)幾種對 PHP 應(yīng)用程序中長時間運行的作業(yè)進行離線服務(wù)的方法。
    2008-09-09
  • Thinkphp結(jié)合AJAX長輪詢實現(xiàn)PC與APP推送詳解

    Thinkphp結(jié)合AJAX長輪詢實現(xiàn)PC與APP推送詳解

    這篇文章主要給大家介紹了關(guān)于Thinkphp結(jié)合AJAX長輪詢實現(xiàn)PC與APP推送的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2017-07-07
  • php XPath對XML文件查找及修改實現(xiàn)代碼

    php XPath對XML文件查找及修改實現(xiàn)代碼

    php XPath對XML文件查找及修改實現(xiàn)代碼,需要的朋友可以參考下。
    2011-07-07
  • mac系統(tǒng)下為 php 添加 pcntl 擴展

    mac系統(tǒng)下為 php 添加 pcntl 擴展

    pcntl中php實現(xiàn)多進程必須要安裝的擴展,本文給大家簡單介紹下如何在mac系統(tǒng)中為 php 添加 pcntl 擴展
    2016-08-08
  • php查詢ip所在地的方法

    php查詢ip所在地的方法

    這篇文章主要介紹了php查詢ip所在地的方法,涉及對純真ip數(shù)據(jù)庫的實用,是非常常見的實用技巧,需要的朋友可以參考下
    2014-12-12
  • php編程每天必學(xué)之驗證碼

    php編程每天必學(xué)之驗證碼

    php編程每天必學(xué)之驗證碼,php驗證碼圖片生成以及頁面實現(xiàn)驗證碼功能進行了詳細的闡述,感興趣的小伙伴們可以參考一下
    2016-03-03

最新評論

册亨县| 秦安县| 眉山市| 禹城市| 哈巴河县| 珠海市| 丹江口市| 江达县| 娄底市| 邵武市| 大英县| 雅安市| 永和县| 木里| 当涂县| 广德县| 偏关县| 孟连| 吉隆县| 乌兰浩特市| 云霄县| 江津市| 股票| 阿合奇县| 贺州市| 晋城| 宽甸| 清苑县| 平潭县| 松原市| 宜丰县| 惠东县| 洮南市| 墨竹工卡县| 兴山县| 永新县| 紫阳县| 安塞县| 松江区| 崇阳县| 盈江县|