Enfileira um comando na fila de comandos para serem processados pelo servidor Redis.
oRedisAfter := oRedisClient:Append(cCommand [ , cParameter ]) |
| Nome | Tipo | Descrição | Obrigatório | Referência | Observações |
|---|---|---|---|---|---|
cCommand | Caracter | Comando a ser enfileirado | X | Pode conter ? que será preenchida por parâmetro | |
cParameter | Caracter | Complemento do comando | Substituirá a interrogação (ou ?) eventual no comando. |
| Nome | Tipo | Descrição | Observações |
|---|---|---|---|
oRedisAfter | objeto tRedisClient | Cópia do objeto sobre o qual foi feita a chamada, alterado por ela.* |
* Isto permite acoplar outros métodos e propriedades à chamada de ::Append()
Por exemplo, oRedisCli:Append(cCommand, @retVal):lOk
testará se o comando foi bem sucedido, sem a necessidade de uma consulta à parte a ::lOk sobre o objeto oRedisClient.
Alguns comandos admitem parâmetros adicionais. Neste caso, para facilidade de programação, pode-se ter uma string de comando fixa (ou constante), com possibilidade de substituição por variáveis nos pontos onde for inserido um ponto de interrogação, o caracter ?::Append() apenas enfileira comandos para processamento pelo servidor Redis. A resposta a eles deve ser obtida por chamadas de ::GetReply()
O método ::Execute() é muito semelhante em propósito ao método ::Append(): ambos disparam a execução de comandos no servidor Redis.
A maior diferença é que o programa que dispare ::Append() poderá não aguardar seu término. E só receberá o resultado do comando quando executar o método ::GetReply().
Isto torna ::Append() ideal para a programação assíncrona e concorrente do servidor Redis, ao passo que ::Exec() fica limitado à programação sequencial e síncrona.
|
|