_C() Функция перепробования

Автор:Тихий океан, Создано: 2017-02-24 16:46:40, Обновлено:

_C ((function, args...) функцию перепробования, которая будет вызывать указанную функцию до успешного возвращения (функция возвращает null или false будет перепробовать), например _C ((exchange.GetTicker), интервал перепробования по умолчанию 3 секунды, можно переопределить переменную _CInterval для управления интервалом перепробования Когда функция возвращает неудачный результат, она повторяет попытку каждые 3 секунды.

Если нет параметров _C (имя функции)

Функции с параметрами _C ((имя функции, параметры функции)

JavaScript

function main() {
    Log(exchange.GetAccount());    //一般调用形式
    
    _CInterval=1;                  //重新 设置重试间隔时间(秒)
    
    Log(_C(exchange.GetAccount));  //使用_C调用形式  不带参数
    
    Log(_C(exchange.GetRecords,PERIOD_M1)); //使用_C调用形式  带参数形式
}

Результаты тестирования кода:img

Питон

def main():
    Log(exchange.GetAccount())    #一般调用形式
    
    _CInterval=1                  #重新 设置重试间隔时间(秒)

    Log(_C(exchange.GetAccount)) #使用_C调用形式  不带参数
    
    Log(_C(exchange.GetRecords,PERIOD_M1)) #使用_C调用形式  带参数形式

Результаты тестирования кода:img


Больше

Птица-парусникНевозможно отобразить сообщения об обменных счетах? Не знаете почему?

Птица-парусникфункция main() { - Я не знаю. Регистрация (_C) (обмен.GetAccount))); Регистрация (("испытание"); Я не знаю.

Птица-парусник https://dn-filebox.qbox.me/677304fbc2a5c448040610b824420e2e0375952e.png

ПэнглихенгЕсли вы хотите, чтобы вы получили доход, то вы получите доход, минус 3 доллара, но как система показывает, что доход остается 0.

БитсонсонМожет ли функция повторных испытаний устанавливать количество повторных испытаний, иначе это бесконечный цикл, и выйти из цикла нужно другим способом, это немного затруднительно.

МакильЕсли есть возвращаемое значение, оно не повторяется. Это предотвращает ошибки API, которые могут привести к отказу от возвращения.