Mutex
PHP Manual

Mutex::lock

(PECL pthreads >= 0.34)

Mutex::lockミューテックスを確保する

説明

final public static boolean Mutex::lock ( long $mutex )

呼び出し元用に、ミューテックスのロックを試みます。

他のスレッドが所有する (ロックしている) ミューテックスをロックしようとすると、ブロックされます。

パラメータ

mutex

Mutex::create() を呼んで取得したハンドル。

返り値

成功したかどうかを返します。

返り値

新しく作り、オプションでロックしたミューテックスのハンドルを返します。

例1 ミューテックスのロックとアンロック

<?php
/** "new" キーワードは使えません。Mutex は PHP のオブジェクトではありません **/
$mutex Mutex::create();
/** ミューテックスのロックが、どんなコンテキストでもできるようになりました **/
var_dump(Mutex::lock($mutex));
/** ロックしたミューテックスは破棄できません **/
var_dump(Mutex::unlock($mutex));
/** 自分が作ったミューテックスは、常に破棄します **/
Mutex::destroy($mutex);
?>

上の例の出力は以下となります。

bool(true)
bool(true)


Mutex
PHP Manual