CascadiaPHP 2024


(PECL ev >= 0.2.0)

Ev::embeddableBackendsReturns the set of backends that are embeddable in other event loops


final public static Ev::embeddableBackends(): int

Returns the set of backends that are embeddable in other event loops.


This function has no parameters.

Return Values

Returns a bit mask which can containing backend flags combined using bitwise OR operator.


Example #1 Embedding loop created with kqueue backend into the default loop

* 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
$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

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top