Registrar una llamada concurrente

# Yar_Concurrent_Client::call

(PECL yar >= 1.0.0)

Yar_Concurrent_Client::call — Registrar una llamada concurrente

### Descripción

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

Registra una llamada RPC, aunque no la envía inmediatamente. Se enviará al llamar a Yar_Concurrent_Client::loop().

### Parámetros

`uri`

  El URI del servidor de RPC (HTTP, TCP).

`method`

  El nombre del servicio (es decir, el nombre del método).

`parameters`

  Parámetros.

`callback`

  Una retrollamada a una función, la cual será invocada mientras se devuelve la respuesta.

`error_callback`
  Si se establece esta retrollamada, Yar la invocará cuando ocurra un error.
`options`
  Un array de opciones. Ver la lista de constantes.

### Valores devueltos

Un ID único que se puede utilizar para identificar la llamada que es.

### Ejemplos

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

    // Si no se especifica la retrollamada, se usará la retrollamada en bucle
    Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"));

    // Este servidor acepta empaquetador JSON
    Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));

    // Tiempo de espera personalizado
    Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_TIMEOUT => 1));

    // Las peticiones aún no se han enviado

Resultado del ejemplo anterior es similar a:

### Ver también

- Yar_Concurrent_Client::loop() - Enviar todas las llamadas
- Yar_Concurrent_Client::reset() - Limpiar todas las llamadas registradas
- Yar_Server::__construct() - Registrar un servidor
- Yar_Server::handle() - Iniciar un servidor RPC

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open