Event::addSignal
Event::addSignal
(PECL event >= 1.2.6-beta)
Event :: addSignal - 使信号事件悬而未决
描述
public bool Event::addSignal ([ double $timeout ] )
Event :: addSignal()
是Event :: add()的别名
Examples
示例#1 Event :: addSignal()示例
<?php
/*
Launch it in a terminal window:
$ php examples/signal.php
In another terminal window find out the pid and send SIGTERM, e.g.:
$ 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
At the first terminal window you should catch the following:
Caught signal 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 "Caught signal $no\n";
$this->base->exit(
}
}
$base = new EventBase(
$c = new MyEventSignal($base
$base->loop(
?>
上面的例子会输出类似于:
Caught signal 15
也可以看看
- Event :: add() - 使事件悬而未决
- Event :: del() - 使事件处于非挂起状态
- Event :: delSignal() - 使信号事件处于非挂起状态
- Event :: signal() - 构造信号事件对象
← Event::add
Event::addTimer →