Регистрация Войти
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Войти через VK Войти через FB Войти через Google Войти через Яндекс
Поиск по сайту
eio_get_event_stream
(PECL eio >= 0.3.1b)
eio_get_event_stream — Возвращает поток, отражающий переменную, используемую при взаимодействии с libeio
Описание
mixed eio_get_event_stream ( void )eio_get_event_stream() получает поток, отражающий переменную, используемую при взаимодействии с libeio. Может быть использовано для привязки некоторого цикла обработки, поставляемого другим расширением PECL, например, libevent.
Список параметров
У этой функции нет параметров.
Возвращаемые значения
eio_get_event_stream() возвращает поток при успехе; иначе NULL
Примеры
Пример #1 ИСпользование eio совместно с libevent
function my_eio_poll($fd, $events, $arg) {
/* Некоторые действия с libevent могут быть здесь */
if (eio_nreqs()) {
eio_poll();
}
/* .. и здесь */
}
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");
/* Прочие eio_* запросы ... */
// Установка флагов события
event_set($event, $fd, EV_READ /*| EV_PERSIST*/, "my_eio_poll", array($event, $base));
// Установка основы события
event_base_set($event, $base);
// Включение события
event_add($event);
// Запуск цикла обработки
event_base_loop($base);
/* То же самое доступно через интерфейс буфера libevent */
Результатом выполнения данного примера будет что-то подобное:
int(3)
int(0)
string(8) "nop data"
int(0)
string(10) "mkdir data"
User Contributed Notes
There are no user contributed notes for this page.
Смотрите также:
Описание на ru2.php.net
Описание на php.ru