(PECL ev >= 0.2.0)
Ev::supportedBackends — 返回当前 libev 配置支持的后端集
此函数没有参数。
返回一个位掩码,其中包含 后端标志,使用按位 *或* 运算符组合。
示例 #1 将使用 kqueue 后端创建的循环嵌入到默认循环中
<?php
/*
* 检查 kqueue 是否可用但不可取,并创建一个 kqueue 后端
* 用于套接字(通常适用于任何 kqueue 实现)。
* 将仅 kqueue/套接字的事件循环存储在 loop_socket 中。(可以可选地
* 使用 EVFLAG_NOENV )。
*
* 示例来自
* http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#Examples_CONTENT-9
*/
$loop = EvLoop::defaultLoop();
$socket_loop = NULL;
$embed = NULL;
if (Ev::supportedBackends() & ~Ev::recommendedBackends() & Ev::BACKEND_KQUEUE) {
if (($socket_loop = new EvLoop(Ev::BACKEND_KQUEUE))) {
$embed = new EvEmbed($loop);
}
}
if (!$socket_loop) {
$socket_loop = $loop;
}
// 现在将 $socket_loop 用于所有套接字,并将 $loop 用于其他任何内容
?>