(PECL ev >= 0.2.0)
Ev::supportedBackends — 傳回目前 libev 設定所支援的後端集合
此函式沒有參數。
傳回一個位元遮罩,其中可以包含使用位元 _OR_ 運算子組合的後端旗標。
範例 #1 將使用 kqueue 後端建立的嵌入式迴圈嵌入預設迴圈
<?php
/*
* 檢查 kqueue 是否可用,但不建議使用,並建立一個 kqueue 後端
* 以用於套接字(通常適用於任何 kqueue 實作)。
* 將僅限 kqueue/socket 的事件迴圈儲存在 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
?>