EventBase::stop()

立即停止事件循环的执行

首字母:E

函数名称:EventBase::stop()

适用版本:EventBase::stop() 函数可用于 PHP 5 >= 5.4.0 版本。

用法:EventBase::stop() 方法用于立即停止事件循环的执行。当调用该方法时,事件循环将立即退出,并停止处理任何待定事件。

示例:

// 创建EventBase对象
$eventBase = new EventBase();
// 创建Event对象
$event = new Event($eventBase, SIGINT, Event::SIGNAL | Event::PERSIST, function () use (&$eventBase) {
 echo "SIGINT received. Stopping event loop." . PHP_EOL;
 $eventBase->stop(); // 停止事件循环
});
// 将事件添加到事件循环中
$event->add();
// 开始事件循环
echo "Starting event loop." . PHP_EOL;
$eventBase->loop();

上述示例中,我们首先创建了一个 EventBase 对象作为事件循环的基础。然后,我们创建了一个 Event 对象,用于监听 SIGINT 信号。在回调函数中打印消息,并调用了 EventBase::stop() 方法来停止事件循环的执行。

最后,我们将事件添加到事件循环中,并调用了 EventBase 的 loop() 方法来启动事件循环。当 SIGINT 信号被触发时,回调函数中的消息会被打印出来,并且事件循环会立即停止执行。

需要注意的是,EventBase::stop() 方法只能在事件循环的执行期间调用。

同首字母函数