Registra uma chamada simultânea

# Yar_Concurrent_Client::call

(PECL yar >= 1.0.0)

Yar_Concurrent_Client::call — Registra uma chamada simultânea

### Descrição

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

Registra uma chamada RPC, mas não a envia imediatamente, ela será enviada durante uma nova chamada a Yar_Concurrent_Client::loop().

### Parâmetros

`uri`

  O URI do servidor RPC (HTTP, TCP).

`method`

  Nome do serviço (também conhecido como nome do método).

`parameters`

  Parâmetros.

`callback`

  Uma função de retorno, que será chamada enquanto a resposta retorna.

`error_callback`
  Se esta função de retorno for definida, o Yar chamará esta função quando ocorrer um erro.
`options`
  Um array de opções. Consulte a lista de constantes.

### Valor Retornado

Um ID exclusivo pode ser usado para identificar qual é a chamada.

### Exemplos

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

    // se a função de retorno não for especificada, a função de retorno no loop será usada
    Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"));

    // este servidor aceita empacotador json
    Yar_Concurrent_Client::call("http://host/api/", "some_method", array("parameters"), "callback", NULL, array(YAR_OPT_PACKAGER => "json"));

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

    // As solicitações ainda não foram enviadas

O exemplo acima produzirá algo semelhante a:

### Veja Também

- Yar_Concurrent_Client::loop() - Envia todas as chamadas
- Yar_Concurrent_Client::reset() - Limpa todas as chamadas registradas
- Yar_Server::__construct() - Registra um servidor
- Yar_Server::handle() - Inicia o servidor RPC

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