Долго работающий алгоритм

 
Например, есть индикатор, работа которого длиться секунды. Как быть в таком случае? Ведь при запуске терминала или при присоединении индикатора к графику или при пересчете, терминал своего рода подвисает. Как бороться с такой проблемой? Например, как заставить индикатор выполниться не в момент загрузки терминала, а уже после?
 
Бороться только одним способом - оптимизировать индикатор. Терминал не может допустить ситуации, когда он будет работать с непросчитанными индикаторами, поэтому он и ждет просчета всех индикаторов.
 
А можно как-то вызвать срабатывание индикатора не по тику, а по какому-нибудь другому событию? Т.е. допустим индикатор проработал 1 секунду, закончил работу, тут же вызвался еще раз.
 
lsv:
А можно как-то вызвать срабатывание индикатора не по тику, а по какому-нибудь другому событию? Т.е. допустим индикатор проработал 1 секунду, закончил работу, тут же вызвался еще раз.
Вы пропустили важное условие: терминал не может допустить ситуации, когда он будет работать с непросчитанными индикаторами, поэтому он и ждет просчета всех индикаторов и никак не может отложить расчеты.

Опубликуйте полный код индикатора - наверняка Вам дадут множество советов по оптимизации.
 
сделай счетчик вызывов функции старт, и запускай расчет не на первом вызове. Так хоть терминал получится запускать без проблем
 
А если комп в данный момент не в сети :) индикатор же вообще ни разу не отобразиться, т.к. тиков то не будит. А можно как-нибудь узнать в момент выполнения терминал находится на связи или нет?
 

сделай в окне свойств переменную для отключения этой функции. Наличие соединения определяется функцией IsConnected()

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