Ошибки, баги, вопросы - страница 1668

 
BlackTomcat:
ЕМНИП, в Документации написано, что правильнее всего инициализировать (создавать) хэндлы индикаторов в функции OnInit, а выполнять IndicatorRelease в функции OnDeinit. Т.е. всё время, пока советник работает, хэндлы индикаторов остаются актуальными.

Не просто актуальными, а пересчитываются (ну или тянут за собой данные для пересчета)! Поэтому IndicatorRelease всегда имеет смысл делать, если 100% знаешь, что больше не понадобится. А это может произойти далеко до OnDeinit.

Например, если вызывать индикатор с каждый раз рэндомными входными параметрами, то никакого смысла не делать IndicatorRelease нет.

 
fxsaber:

Не просто актуальными, а пересчитываются (ну или тянут за собой данные для пересчета)! Поэтому IndicatorRelease всегда имеет смысл делать, если 100% знаешь, что больше не понадобится. А это может произойти далеко до OnDeinit.

Например, если вызывать индикатор с каждый раз рэндомными входными параметрами, то никакого смысла не делать IndicatorRelease нет.

Ну если Ваш алгоритм подразумевает постоянную смену параметров индикатора, то тогда да, Вы правы. Но если же на самом деле этого не происходит, то затраты машинных ресурсов на пересчёт многократно меньше, чем на создание "нового" индикатора + до этого был "убит" старый. Как я понял, именно эту мысль старался донести Ренат.
 
BlackTomcat:
Ну если Ваш алгоритм подразумевает постоянную смену параметров индикатора, то тогда да, Вы правы. Но если же на самом деле этого не происходит, то затраты машинных ресурсов на пересчёт многократно меньше, чем на создание "нового" индикатора + до этого был "убит" старый. Как я понял, именно эту мысль старался донести Ренат.
Да. Лучше всего сделать универсальное хранилище, как это реализовано разработчиками в MT4.
 
fxsaber:

IndicatorRelease после iCustom делать надо?


Зачем?

Не надо. После IndicatorCreate тоже не надо делать

 
Slawa:

Зачем?

Не надо. После IndicatorCreate тоже не надо делать

После - не значит сразу. Но если не надо, то когда надо?
 
Возможно ли узнать все номера хэндлов индикаторов, которые работают в терминале - не только связка IndicatorCreate+ChartIndicatorAdd, но и IndicatorCreate-only?
 
Как проверить, что handle индикатора "мертв"? Например, я сделал IndicatorCreate, а кто-то другой сделал его IndicatorRelease.
 
fxsaber:
Как проверить, что handle индикатора "мертв"? Например, я сделал IndicatorCreate, а кто-то другой сделал его IndicatorRelease.
Думаю, что в этом случае счётчик ссылок на хэндл индикатора будет уменьшен на единицу, а сам индикатор продолжит быть активным.
 
BlackTomcat:
Думаю, что в этом случае счётчик ссылок на хэндл индикатора будет уменьшен на единицу, а сам индикатор продолжит быть активным.
Что за счетчик?
 
Renat Fatkhullin:
Эту ошибку исправим в ближайшие дни. Перестарались с защитой.
Renat Fatkhullin:
Также включим автоматическое сохранение текста при наборе, чтобы после неудачи или креша броузера можно было продолжить

Когда стоит ждать всё это счастье?

 

.
Причина обращения: