(PECL zookeeper >= 0.4.0)
zookeeper_dispatch — Вызвать callback-функции для ожидающих операций
Функция zookeeper_dispatch() вызывает callback-функции, переданные операциями, такими как Zookeeper::get() или Zookeeper::exists().
С версии 0.4.0 эта функция должна вызываться вручную для асинхронных операций. Если вы хотите, чтобы это было сделано автоматически, вы можете объявить тики в самом начале скрипта, используя директиву declare.
После PHP 7.1 вы можете игнорировать эту функцию. Модуль использует EG (vm_interrupt) для реализации асинхронного вызова callback-функций.
У этой функции нет параметров.
Функция не возвращает значения после выполнения.
Эта функция вызывает предупреждение PHP, если callback-функция не может быть вызвана.
Пример #1 zookeeper_dispatch() example #1
Вызов callback-функций вручную.
<?php
$client = new Zookeeper();
$client->connect('localhost:2181');
$client->get('/zookeeper', function() {
echo "Была вызвана callback-функция".PHP_EOL;
});
while(true) {
sleep(1);
zookeeper_dispatch();
}
?>
Пример #2 Пример использования zookeeper_dispatch() #2
Объявление тиков.
<?php
declare(ticks=1);
$client = new Zookeeper();
$client->connect('localhost:2181');
$client->get('/zookeeper', function() {
echo "Была вызвана callback-функция".PHP_EOL;
});
while(true) {
sleep(1);
}
?>