Архив версий МТ. - страница 5

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Сергей Таболин
1631
Сергей Таболин  
Roman:

Это не костыль, а рекомендованная практика от разработчиков.
Эту функцию я обнаружил в описании к циклу while

По этому пришла мысль, если эта функция корректно завершает выполнение программы, то почему бы её не использовать для TesterStop().
Жаль что она не срабатывает для TesterStop(), будем теперь знать об этом.
Хотя справедливо бы задать вопрос разработчикам, должна ли функция IsStopped() срабатывать для функции TesterStop() ?
Может это баг?

Но главное нашлось решение проблемы.

Я не говорил что она не срабатывает. Я говорил, что TesterStop() требует чтобы тест уже некоторое время отработал. )))

Возможно, после этого тоже будет срабатывать...
Roman
168
Roman  
Сергей Таболин:

Я не говорил что она не срабатывает. Я говорил, что TesterStop() требует чтобы тест уже некоторое время отработал. )))

Возможно, после этого тоже будет срабатывать...

Теперь понял

Alexey Viktorov
35791
Alexey Viktorov  
Сергей Таболин:

Я всё понимаю  и костыли мне без надобности. А костыль пришлось искать вот тут почитайте для чего

Возможно. Но я что-то не припомню, чтобы на это кто-то жаловался. 

Можно пояснения

//+------------------------------------------------------------------+
double OnTester()
{
   if(tester_stop) return(нужное вам значение);

   остальной код
}

остальной код, это что? Что в этом коде выполняется?

Сергей Таболин
1631
Сергей Таболин  
Alexey Viktorov:

Можно пояснения

остальной код, это что? Что в этом коде выполняется?

Лично у меня там идёт расчёт стабильности роста баланса. ))) Как я уже говорил, собираюсь открыть обсуждение по этой теме.

А вообще, там можно считать что угодно.

Alexey Viktorov
35791
Alexey Viktorov  
Roman:

Это не костыль, а рекомендованная практика от разработчиков.
Эту функцию я обнаружил в описании к циклу while

По этому пришла мысль, если эта функция проверяет факт принудительного завершения программы, то почему бы её не использовать для TesterStop().
Жаль что она не срабатывает для TesterStop(), будем теперь знать об этом.
Хотя справедливо бы задать вопрос разработчикам, должна ли функция IsStopped() срабатывать для функции TesterStop() ?
Может это баг?

Но главное нашлось решение проблемы.

Эта функция и предназначена для завершения таких циклов. Принудительное завершение программы это закрытие окна с экспертом или закрытие самого терминала. И если вы запустите бесконечный цикл без проверки функции IsStopped() то оставшийся в памяти цикл будет продолжать работать. Значение возвращаемое функцией IsStopped() позволяет прервать цикл в момент закрытия терминала. В остальных случаях она бесполезна, на сколько я понимаю.

Alexey Viktorov
35791
Alexey Viktorov  
Сергей Таболин:

Лично у меня там идёт расчёт стабильности роста баланса. ))) Как я уже говорил, собираюсь открыть обсуждение по этой теме.

А вообще, там можно считать что угодно.

Но ведь значение которое возвращает OnTester где-то обрабатывается?

Считать-то можно что угодно, а вот как и где использовать посчитанное это другой вопрос.

Сергей Таболин
1631
Сергей Таболин  
Alexey Viktorov:

Но ведь значение которое возвращает OnTester где-то обрабатывается?

Считать-то можно что угодно, а вот как и где использовать посчитанное это другой вопрос.

Это используется как результат оптимизации...


Alexey Viktorov
35791
Alexey Viktorov  
Сергей Таболин:

Это используется как результат оптимизации...


Это не использование, это отображение результата оптимизации.

Сергей Таболин
1631
Сергей Таболин  
Alexey Viktorov:

Это не использование, это отображение результата оптимизации.

Так в OnTester() как раз и рассчитывается этот самый результат. А использование... Я использую для оценки оптимизации...

Alexey Viktorov
35791
Alexey Viktorov  
Сергей Таболин:

Так в OnTester() как раз и рассчитывается этот самый результат. А использование... Я использую для оценки оптимизации...

Но ведь судя по этому куску кода

//+------------------------------------------------------------------+
double OnTester()
{
   if(tester_stop) return(нужное вам значение);

   остальной код
}
значение возвращённое из этой функции как-то должно обрабатываться. Какой прок от возврата "минус много девяток" если никакой реакции в дальнейшем коде на это не предусмотрено?
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий