CakeFest 2017 NYC, the Official CakePHP Conference

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 objets Threaded 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 l'objet Threaded 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();
}
?>
add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top