亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PHP基于文件鎖解決多進(jìn)程同時(shí)讀寫(xiě)一個(gè)文件問(wèn)題示例

 更新時(shí)間:2017年09月08日 12:08:22   作者:陌上花開(kāi)  
這篇文章主要介紹了PHP基于文件鎖解決多進(jìn)程同時(shí)讀寫(xiě)一個(gè)文件的方法,結(jié)合實(shí)例形式分析了PHP使用flock進(jìn)行文件讀寫(xiě)加鎖操作用法,需要的朋友可以參考下

本文實(shí)例講述了PHP基于文件鎖解決多進(jìn)程同時(shí)讀寫(xiě)一個(gè)文件問(wèn)題。分享給大家供大家參考,具體如下:

首先PHP是支持進(jìn)程的而不支持多線程(這個(gè)先搞清楚了),如果是對(duì)于文件操作,其實(shí)你只需要給文件加鎖就能解決,不需要其它操作,PHP的flock已經(jīng)幫你搞定了。

用flock在寫(xiě)文件前先鎖上,等寫(xiě)完后解鎖,這樣就實(shí)現(xiàn)了多線程同時(shí)讀寫(xiě)一個(gè)文件避免沖突。大概就是下面這個(gè)流程

/*
*flock(file,lock,block)
*file 必需,規(guī)定要鎖定或釋放的已打開(kāi)的文件
*lock 必需。規(guī)定要使用哪種鎖定類型。
*block 可選。若設(shè)置為 1 或 true,則當(dāng)進(jìn)行鎖定時(shí)阻擋其他進(jìn)程。
*lock
*LOCK_SH 要取得共享鎖定(讀取的程序)
*LOCK_EX 要取得獨(dú)占鎖定(寫(xiě)入的程序)
*LOCK_UN 要釋放鎖定(無(wú)論共享或獨(dú)占)
*LOCK_NB 如果不希望 flock() 在鎖定時(shí)堵塞
/*
if (flock($file,LOCK_EX))
{
fwrite($file,'write more words');
flock($file,LOCK_UN);
}
else
{
//處理錯(cuò)誤邏輯
}
fclose($file);
)

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php文件操作總結(jié)》、《PHP常用遍歷算法與技巧總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《php字符串(string)用法總結(jié)》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總

希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論