Stackable::synchronized
(PECL pthreads >= 0.40)
Stackable::synchronized — Synchronisation
Description
Exécute le bloc tout en maintenant le verrou de synchronisation pour le contexte courant.
Liste de paramètres
-
block
-
Le bloc de code à exécuter.
-
...
-
Liste d'arguments variables à utiliser comme arguments de la fonction du bloc de code.
Valeurs de retour
La valeur retournée par le bloc de code.
Exemples
Exemple #1 Synchronisation
- <?php
- class My extends Stackable {
- public function run() {
- $this->synchronized(function($object){
- var_dump($object->isWaiting());
- $object->notify();
- }, $this);
- }
- }
- /** Création d'un Worker **/
- $my = new My();
- /** On place My dans la pile **/
- /** Exécution de quelque chose ici **/
- $my->synchronized(function($object){
- $object->wait();
- }, $my);
- ?>
L'exemple ci-dessus va afficher :
bool(/** true ou false **/)