Árvore de páginas

Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 8 Próxima »

Dispara a execução de um comando a ser processado pelo servidor Redis.

Sintaxe

oRedisClient:Execute(cCommand, @retVal)

Observações

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 ::Execute() aguardará seu término e receberá dele o resultado do comando, ao passo que um programa que dispare ::Append() terá que chamar ::GetReply() para obter o resultado da execução do comando.

Isto torna ::Append() ideal para a programação assíncrona e concorrente, ao passo que ::Exec() fica limitado à programação sequencial e síncrona.

Um ponto importante é que o resultado da função é passado para o parâmetro retVal, que deve por isso ser passado por referência. Execute também altera o estado do objeto sobre o qual é chamado. Por isso, também as propriedades do objeto terão que ser avaliadas.

Exemplos

#include 'protheus.ch'
 
User Function redisTst()
  Local retVal := Nil

  oRedisCli:= tRedisClient():New()

  // Setup Redis connection
  oRedisCli:Connect("tec-clima", 6379, "")

  If oRedisClient:lConnected
    // Set the field 'x' to the value 'aaa'
	oRedisCli:Exec("set x aaa", @retVal)

    ConOut("Result of Exec(): " + retVal)
    VarInfo("State of the object: ", oRdClient)

    oRdClient:Disconnect()
    Return .T.
  EndIf 

Return .F.



  • Sem rótulos