(PECL ev >= 0.2.0)
Returns the set of backends that are embeddable in other event loops.
final public static void Ev::embeddableBackends ( void )
Returns the set of backends that are embeddable in other event loops.
Returns:
Returns a bit mask which can containing backend flags combined using bitwise OR operator.
Examples:
Embedding loop created with kqueue backend into the default loop
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <?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 ?> |
See also:
EvEmbed -
Examples -
Please login to continue.