Ev::recommendedBackends
(PECL ev >= 0.2.0)
Ev::recommendedBackends — Retourne un masque d'octets de backends recommandés pour la plateforme courante
Description
Retourne un jeu de tous les backends compilés dans ce binaire de libev, et également recommandée pour cette plateform, ce qui signifie qu'ils devraient fonctionner pour la plupart des types de descripteur de fichiers. Ce jeu est générallement plus petit que celui retourné par la fonction ev_supported_backends(), sachant que, par exemple, kqueue est cassé sur les systèmes BSD et ne sera pas auto-détecté tant qu'il n'est pas requis explicitement. C'est le jeu de backends que libev utilisera lorsqu'aucun ne sera demandé explicitement.
Liste de paramètres
Cette fonction ne contient aucun paramètre.
Valeurs de retour
Retourne un masque d'octets contenant les drapeaux des backends combinés en utilisant l'opérateur OR.
Exemples
Exemple #1 Encapsule une boucle dans une autre
<?php
/*
* Tente de récupérer une boucle d'événement interne, et de l'encapsuler dans
* la boucle d'événement par défaut.
* Si c'est possible, utilisation de la boucle par défaut.
* La boucle par défaut est stockée dans $loop_hi, alors que la boucle interne
* est stockée dans $loop_lo( qui est $loop_hi dans ce cas car aucune boucle interne
* ne peut être utilisée).
*
* Exemple icci de :
* http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod#Examples_CONTENT-9
*/
$loop_hi = EvLoop::defaultLoop();
$loop_lo = NULL;
$embed = NULL;
/*
* Regarde s'il y a une chance d'en récupérer une qui fonctionne
* (la valeur du drapeau à 0 signifie l'auto-détection)
*/
$loop_lo = Ev::embeddableBackends() & Ev::recommendedBackends()
? new EvLoop(Ev::embeddableBackends() & Ev::recommendedBackends())
: 0;
if ($loop_lo) {
$embed = new EvEmbed($loop_lo, function () {});
} else {
$loop_lo = $loop_hi;
}
?>
Voir aussi
- EvEmbed
- Ev::embeddableBackends() - Retourne le jeu de backends qui sont encapsulés dans les autres boucles d'événements
- Ev::supportedBackends() - Retourne le jeu de backends supportés par la configuration courant de libev
- Les drapeaux de Backend
- Les exemples