Yar_Concurrent_Client
PHP Manual

Yar_Concurrent_Client::call

(PECL yar >= 1.0.0)

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

Описание

public static int Yar_Concurrent_Client::call ( string $uri , string $method , array $parameters [, callable $callback ] )

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

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

uri

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

method

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

parameters

Параметры

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));

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

Результатом выполнения данного примера будет что-то подобное:

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


Yar_Concurrent_Client
PHP Manual