Threaded::notifyOne — Синхронизация
(PECL pthreads >= 3.0.0)
Описание
public bool Threaded::notifyOne ( void )
Отправить уведомление указанному объекту. Это разблокирует по крайней мере один из заблокированных потоков (в отличие от разблокировки всех из них, как показано с помощью Threaded::notify()).
Список параметров
У этой функции нет параметров.
Возвращаемые значения
Логический признак успеха
Примеры
Пример #1 Уведомления и ожидание
<?php class My extends Thread { public function run() { /** заставить этот поток ждать **/ $this->synchronized(function($thread){ if (!$thread->done) $thread->wait(); }, $this); } } $my = new My(); $my->start(); /** отправить уведомление ожидающему потоку **/ $my->synchronized(function($thread){ $thread->done = true; $thread->notifyOne(); }, $my); var_dump($my->join()); ?>
Результат выполнения данного примера:
bool(true)