eio_get_event_stream

(PECL eio >= 0.3.1b)

eio_get_event_streamRécupère le flux représentant une variable utilisée dans les communications internes avec libeio

Description

eio_get_event_stream(): mixed

eio_get_event_stream() récupère un flux représentant une variable utilisée dans les communications internes avec libeio. Peut être utilisé pour lier avec des boucles d'événements fournies par d'autres extensions PECL, comme par exemple libevent.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

eio_get_event_stream() retourne un flux en cas de succès, null sinon.

Exemples

Exemple #1 Utilisation de eio avec libevent

<?php
function my_eio_poll($fd, $events, $arg) {
/* Quelques commandes libevent peuvent être effectuées ici .. */
if (eio_nreqs()) {
eio_poll();
}
/* .. et ici */
}

function
my_res_cb($d, $r) {
var_dump($r); var_dump($d);
}

$base = event_base_new();
$event = event_new();

$fd = eio_get_event_stream();
var_dump($fd);

eio_nop(EIO_PRI_DEFAULT, "my_res_cb", "nop data");
eio_mkdir("/tmp/abc-eio-temp", 0750, EIO_PRI_DEFAULT, "my_res_cb", "mkdir data");
/* quelques appels à eio_* calls ici ... */


// Définit les drapeaux des événements
event_set($event, $fd, EV_READ /*| EV_PERSIST*/, "my_eio_poll", array($event, $base));

// Définit l'événement de base
event_base_set($event, $base);

// Active l'événement
event_add($event);

// Démarre la boucle des événements
event_base_loop($base);

/* La même chose peut être effectuée avec les interfaces libevent bufferisées */
?>

Résultat de l'exemple ci-dessus est similaire à :

int(3)
int(0)
string(8) "nop data"
int(0)
string(10) "mkdir data"
add a note

User Contributed Notes

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