(PECL pthreads >= 0.34)
Mutex::unlock — ミューテックスを解放する
$mutex
[,
boolean
$destroy
] )ミューテックスへのロックの解除を試みます。オプションで、ミューテックスのハンドルを破棄します。 このメソッドを呼び出す時点で、呼び出し側おスレッドがそのミューテックスを所有している必要があります。
mutex
Mutex::create() を呼んで取得したハンドル。
destroy
true にすると、ロックを解除した後でミューテックスを破棄します。
成功したかどうかを返します。
例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)