Threaded::wait

(PECL pthreads >= 2.0.0)

Threaded::waitSynchronization

説明

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

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

パラメータ

timeout

An optional timeout in microseconds

戻り値

成功した場合に true を、失敗した場合に false を返します。

例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());
?>

上の例の出力は以下となります。

bool(true)

関連キーワード:  Synchronization, Threaded, wait, timeout, パラメータ, Waiting, Notifications, 失敗, 成功, microseconds