Ev::embeddableBackends
(PECL ev >= 0.2.0)
Ev::embeddableBackends — Returns the set of backends that are embeddable in other event loops
Descrição
Returns the set of backends that are embeddable in other event loops.
Parâmetros
Esta função não possui parâmetros.
Valor Retornado
Returns a bit mask which can containing backend flags combined using bitwise OR operator.
Exemplos
Example #1 Embedding loop created with kqueue backend into the default loop
<?php
/*
* Check if kqueue is available but not recommended and create a kqueue backend
* for use with sockets (which usually work with any kqueue implementation).
* Store the kqueue/socket-only event loop in loop_socket. (One might optionally
* use EVFLAG_NOENV, too)
*
* Example borrowed from
* 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;
}
// Now use $socket_loop for all sockets, and $loop for anything else
?>
Veja Também
- EvEmbed
- Ev::recommendedBackends() - Returns a bit mask of recommended backends for current platform
- Ev::supportedBackends() - Returns the set of backends supported by current libev configuration
- Backend flags
- Examples