Threaded::wait

(PECL pthreads >= 2.0.0)

Threaded::waitSynchronization

Description

public Threaded::wait(int $timeout = ?): bool

Will cause the calling context to wait for notification from the referenced object

Parameters

timeout

An optional timeout in microseconds

Return Values

Returns true on success or false on failure.

Examples

Example #1 Notifications and Waiting

<?php
class My extends Thread {
    public function 
run() {
        
/** cause this thread to wait **/
        
$this->synchronized(function($thread){
            if (!
$thread->done)
                
$thread->wait();
        }, 
$this);
    }
}
$my = new My();
$my->start();
/** send notification to the waiting thread **/
$my->synchronized(function($thread){
    
$thread->done true;
    
$thread->notify();
}, 
$my);
var_dump($my->join());
?>

The above example will output:

bool(true)