(PECL pthreads >= 0.34)
Mutex::lock — Acquière un Mutex
$mutex
)Tente de verrouiller le Mutex de l'appelant.
Une tentative de verrouillage d'un Mutex appartenant (verrouillé) à un autre Thread conduit à un blocage.
mutex
Un gestionnaire retourné par un appel à la méthode Mutex::create().
Un booléen indiquant le statut de l'opération.
Le gestionnaire de Mutex nouvellement créé, et optionnellement verrouillé.
Exemple #1 Verrouillage et déverrouillage d'un Mutex
<?php
/** Vous ne pouvez pas utiliser le mot clé "new", un Mutex n'est pas un objet PHP **/
$mutex = Mutex::create();
/** Vous pouvez maintenant verrouiller le Mutex dans n'importe quel contexte **/
var_dump(Mutex::lock($mutex));
/** Il n'est pas valide que de tenter de détruire un Mutex verrouillé **/
var_dump(Mutex::unlock($mutex));
/** Toujours détruire un Mutex que vous avez créé **/
Mutex::destroy($mutex);
?>
L'exemple ci-dessus va afficher :
bool(true) bool(true)