CakeFest 2024: The Official CakePHP Conference

Yar_Concurrent_Client::call

(PECL yar >= 1.0.0)

Yar_Concurrent_Client::callЗарегистрировать конкурентный вызов

Описание

public static Yar_Concurrent_Client::call(
    string $uri,
    string $method,
    array $parameters = ?,
    callable $callback = ?,
    callable $error_callback = ?,
    array $options = ?
): int

Регистрирует RPC-вызов, но не посылает его немедленно, а откладывает до моменты вызова Yar_Concurrent_Client::loop()

Список параметров

uri

URI (http, tcp) сервера RPC

method

Имя сервиса (имя метода)

parameters

Параметры

callback

Callback-функция, которая будет вызвана после отработки удалённого запроса.

Возвращаемые значения

Уникальный идентификатор.

Примеры

Пример #1 Пример использования Yar_Concurrent_Client::call()

<?php
function callback($retval, $callinfo) {
var_dump($retval);
}

function
error_callback($type, $error, $callinfo) {
error_log($error);
}

Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback");

//если функция обратного вызова не задана, то будет использована определённая в цикле вызовов
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"));

//этот сервер принимает упаковку JSON
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));

//отдельно заданное время ожидания
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT=>1));

//запросы всё ещё не запущены
?>

Вывод приведённого примера будет похож на:


Смотрите также

add a note

User Contributed Notes

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