(PECL pthreads >= 0.34)
Mutex::trylock — Attempt to Acquire Mutex
$mutex
)Attempt to lock the Mutex for the caller without blocking if the Mutex is owned (locked) by another Thread.
mutex
A handle returned by a previous call to Mutex::create().
A boolean indication of success.
Exemplo #1 Mutex Locking and Unlocking
<?php
/** You cannot use the "new" keyword, a Mutex is not a PHP object **/
$mutex = Mutex::create();
/** You can now try to lock the mutex in any context **/
var_dump(Mutex::trylock($mutex));
/** It is invalid to attempt to destroy a locked Mutex **/
var_dump(Mutex::unlock($mutex));
/** Always destroy mutex you have created **/
Mutex::destroy($mutex);
?>
O exemplo acima irá imprimir:
bool(true) bool(true)