Modificateurs de méthodes
Pthreads écrase la fonctionalité des modificateurs de méthodes protégées et privées afin de founir une fonctionalité plus conforme aux objets multi-threads. Pthreads applique cette fonctionalité à tous les Threads, ainsi qu'aux objets Worker et Stackable depuis leurs créations.
Exemple #1 Exemple de méthode protégée : les méthodes protégées peuvent seulement être exécutées par un seul Thread à la fois.
<?php class ExampleThread extends Thread { public function run() { /* Code du thread */ if ($this->synchronized()) { } } protected function exclusive() { /* méthode de synchronisation */ } } $thread = new ExampleThread(); if ($thread->start()) { $thread->exclusive(); } ?>
Exemple #2 Exemple de méthode privée : les méthodes privées ne peuvent être exécutées par le Thread, le Worker ou le Stackable que pendant leur exécution
<?php class ExampleThread extends Thread { public function run() { /* Code du thread */ if ($this->insideonly()) { } } private function insideonly() { /* méthode privée */ } } $thread = new ExampleThread(); if ($thread->start()) { $thread->insideonly(); } ?>