人人人妻人人人妻人人人,99精品国产综合久久久久五月天 ,欧美白人最猛性XXXXX,日韩AV无码免费播放

News新聞

業(yè)界新聞動態(tài)、技術前沿
Who are we?

您的位置:首頁      樂道系統(tǒng)FAQ      PHP 文件鎖與進程鎖的使用示例

PHP 文件鎖與進程鎖的使用示例

標簽: 發(fā)布日期:2017-08-07 00:00:00 249

鑒于前面介紹了swoole,就借用swoole的服務器/客戶端與多進程機制對鎖進行說明.

這里只針對PHP的鎖機制進行說明,由于SQL的鎖與其作用方式和應用場景不同,將作另行說明.

1.文件鎖

  • flock()
  • fclose()
  • swoole_lock()

文件鎖的可能應用場景為:

1.限制并發(fā)多進程或多臺服務器需要對同一文件進行訪問和修改;

2.對參與文件I/O的進程隊列化和人為阻塞;

3.在業(yè)務邏輯中對文件內容進行守護;

下面是文件鎖C/S通訊機制下的使用,已經省略了具體的通訊過程

Server(服務器通訊過程已略):

//監(jiān)聽數(shù)據發(fā)送事件
$serv->on('receive', function ($serv, $fd, $from_id, $data) {
  $serv->send($fd, "ServerEnd");

  $p_file = "locktest.txt";
  var_dump(file_get_contents($p_file));
});