(PECL pthreads >= 2.0.0)
Threaded::synchronized — Synchronisation
Exécute le bloc tout en retenant les verrous de synchronisation des objets référencés pour le contexte appelant.
block
Le bloc de code à exécuter
...
Liste variable d'arguments à utiliser comme argument de la fonction
La valeur retournée du bloc
Exemple #1 Synchronisation
<?php
class My extends Thread {
public function run() {
$this->synchronized(function($thread){
if (!$thread->done)
$thread->wait();
}, $this);
}
}
$my = new My();
$my->start();
$my->synchronized(function($thread){
$thread->done = true;
$thread->notify();
}, $my);
var_dump($my->join());
?>
L'exemple ci-dessus va afficher :
bool(true)