Event::addSignal
(PECL event >= 1.2.6-beta)
Event::addSignal — Перевести событие сигнала в состояние ожидания
Описание
public
Event::addSignal
(
float
$timeout
= ?
) : boolМетод Event::addSignal() является псевдонимом для Event::add()
Примеры
Пример #1 Пример использования Event::addSignal()
<?php
/*
Запустите в окне терминала:
$ php examples/signal.php
В другом окне терминала найдите pid и отправьте SIGTERM, например:
$ ps aux | grep examp
ruslan 3976 0.2 0.0 139896 11256 pts/1 S+ 10:25 0:00 php examples/signal.php
ruslan 3978 0.0 0.0 9572 864 pts/2 S+ 10:26 0:00 grep --color=auto examp
$ kill -TERM 3976
В первом окне терминала вы должны увидеть следующее:
Поймал сигнал 15
*/
class MyEventSignal {
private $base, $ev;
public function __construct($base) {
$this->base = $base;
$this->ev = Event::signal($base, SIGTERM, array($this, 'eventSighandler'));
$this->ev->addSignal();
}
public function eventSighandler($no, $c) {
echo "Поймал сигнал $no\n";
$this->base->exit();
}
}
$base = new EventBase();
$c = new MyEventSignal($base);
$base->loop();
?>
Результатом выполнения данного примера будет что-то подобное:
Поймал сигнал 15
Смотрите также
- Event::add() - Перести событие в состояние ожидания
- Event::del() - Перевести событие в пассивное состояние
- Event::delSignal() - Перевести событие сигнала в пассивное состояние
- Event::signal() - Создать объект события сигнала