PHP Conference Japan 2024

Yar_Concurrent_Client::call

(PECL yar >= 1.0.0)

Yar_Concurrent_Client::call注册并发调用

描述

public static Yar_Concurrent_Client::call(
    字符串 $uri,
    字符串 $method,
    数组 $parameters = ?,
    可调用 $callback = ?,
    可调用 $error_callback = ?,
    数组 $options = ?
): 整数

注册一个 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 打包器
Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT=>1));
// 自定义超时

// 请求尚未发送
?>

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


参见

添加注释

用户贡献的笔记

此页面没有用户贡献的笔记。
To Top