(PECL ev >= 0.2.0)
Ev::supportedBackends — Retourne le jeu de backends supportés par la configuration courant de libev
Retourne le jeu de backends supportés par la configuration courant de libev.
Cette fonction ne contient aucun paramètre.
Retourne un masque d'octets qui peut contenir les drapeaux de backend combinés en utilisant l'opérateur OR.
Exemple #1 Boucle embarqué créé avec le backend kqueue dans la boucle par défaut
<?php
/*
* Vérifie si kqueue est disponible (mais non recommandé) et crée un backend kqueue
* pour l'utiliser avec des sockets (ce qui fonctionne avec n'importe quelle implémentation
* kqueue).
* Stocke la boucle d'événements kqueue (utilisable uniquement via des sockets)
* dans loop_socket. (utilisation optionnelle de EVFLAG_NOENV)
*
* Exemple repris depuis l'URL suivante :
* 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;
}
// Maintenant, utilisation de $socket_loop pour toutes les sockets et $loop pour tout le reste
?>