(PECL ev >= 0.2.0)
EvWatcher::keepalive — 配置循环是否保持不返回
配置循环是否保持不返回。如果 keepalive value
设置为 false
,即使观察者处于活动状态,观察者也不会阻止 Ev::run() / EvLoop::run() 返回。
观察者默认情况下 keepalive value
为 true
。
清除 keepalive 状态在仅因为观察者处于活动状态而从 Ev::run() / EvLoop::run() 返回时很有用。它可能是一个长时间运行的 UDP 套接字观察者或类似的东西。
value
如果 keepalive value
设置为 false
,即使观察者处于活动状态,观察者也不会阻止 Ev::run() / EvLoop::run() 返回。
返回之前状态。
示例 #1 为某个 UDP 套接字注册 I/O 观察者,但不要仅仅因为该观察者而阻止事件循环运行。
<?php
$udp_socket = ...
$udp_watcher = new EvIo($udp_socket, Ev::READ, function () { /* ... */ });
$udp_watcher->keepalive(FALSE);
?>