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

RPC 服务器 URI(http, tcp)

method

服务名称(也称为方法名称)

parameters

参数

callback

一个函数回调,当响应返回时将被调用。

返回值

一个唯一的 ID,可用于识别它是哪个调用。

示例

示例 #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")); // 如果没有指定回调,
// 循环中的回调将被使用
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));
// 此服务器接受 json packager
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT=>1));
// 自定义超时

// 请求尚未发送
?>

上面的示例将输出类似以下内容


参见

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top