O recurso está a ser carregado... Carregamento...

_C

Tente novamente a função de tolerância a falhas da interface.

Valor de retorno da função de chamada de retorno quando executada. Todos os tipos são suportados pelo sistema excetovalor lógico falsoevalor nulo.

_C (((pfn) - Não, não, não.

O parâmetropfné uma referência de função, que é umaFunção de recallback- Não. pfn verdade função Parâmetros paraFunções de recallback, pode haver mais de um parâmetroargTipo e número de parâmetrosargDepende dos parâmetros doFunção de recallback- Não. arg Falso string, number, bool, object, array, function, todos os tipos são suportados pelo sistema, como valores nulos

function main(){
    var ticker = _C(exchange.GetTicker)
    // Adjust _C() function retry interval to 2 seconds
    _CDelay(2000)
    var depth = _C(exchange.GetDepth)
    Log(ticker)
    Log(depth)
}
def main():
    ticker = _C(exchange.GetTicker)
    _CDelay(2000)
    depth = _C(exchange.GetDepth)
    Log(ticker)
    Log(depth)
void main() {
    auto ticker = _C(exchange.GetTicker);
    _CDelay(2000);
    auto depth = _C(exchange.GetDepth);
    Log(ticker);
    Log(depth);
}

Para funções tolerantes a erros sem parâmetros:

function main(){
    var records = _C(exchange.GetRecords, PERIOD_D1)
    Log(records)
}
def main():
    records = _C(exchange.GetRecords, PERIOD_D1)
    Log(records)
void main() {
    auto records = _C(exchange.GetRecords, PERIOD_D1);
    Log(records);
}

Para funções com parâmetros tolerantes a erros:

var test = function(a, b){
    var time = new Date().getTime() / 1000
    if(time % b == 3){
        Log("Eligible!", "#FF0000")
        return true
    }
    Log("Retry!", "#FF0000")
    return false
}            

function main(){
    var ret = _C(test, 1, 5)
    Log(ret)
}
import time
def test(a, b):
    ts = time.time()
    if ts % b == 3:
        Log("Eligible!", "#FF0000")
        return True
    Log("Retry!", "#FF0000")
    return False            

def main():
    ret = _C(test, 1, 5)
    Log(ret)
// C++ does not support fault tolerance for custom functions in this way

Também pode ser usado para tolerância a falhas de funções personalizadas:

O_C()função continuará a chamar a função especificada até que retorne com sucesso (a função referenciada pelo parâmetropfnretornozeroouFalsoQuando for chamado, tentará ligar novamente.pfnPor exemplo:_C(exchange.GetTicker). O intervalo de tentativa de reinicialização padrão é de 3 segundos, você pode chamar o_CDelay()função para definir o intervalo de reatendimento._CDelay(1000)A utilização de um dispositivo de ensaio para alterar o intervalo de ensaio_C()Função para 1 segundo. A tolerância de falhas pode ser feita para, mas não se limita a, as seguintes funções:

  • exchange.GetTicker()
  • exchange.GetDepth()
  • exchange.GetTrades()
  • exchange.GetRecords()
  • exchange.GetAccount()
  • exchange.GetOrders()
  • exchange.GetOrder()
  • exchange.GetPositions()Todos podem ser chamados pelo_C()A função de tolerância a falhas._C()a função não é limitada à tolerância de falha da função acima listada, o parâmetropfné uma referência de função em vez de uma chamada de função. Observe que é_C(exchange.GetTicker), não_C(exchange.GetTicker()).
_N _Cruzada