DelAllLabels приводит к "General Protection Fault"

Страницы: 1
RSS
DelAllLabels приводит к "General Protection Fault", Вызов DelAllLabels при смене тикера приводит к падению QUIK с ошибкой "General Protection Fault"
 
   Тестовый скрипт:
Скрытый текст

По-видимому, если во время восстановления меток после смены инструмента (график подключен к каналу), вызвать DelAllLabels, QUIK не выдерживает такой "шизофрении", и падает с криком "Internal exception happened".

Помогает только задержка, позволяющая QUIK восстановить все метки.
Как поймать момент окончания прорисовки, мне придумать так и не удалось, может быть разработчики что-нибудь подскажут?
Версия терминала - 10, но и на 7-ой всё то же самое.
 
Значки почему-то не выкладываются.
 
Стрелки: Arrows.zip
 
Придумал!
Вот что ноосфера животворящая делает!

Код
      if lastLbl then
        repeat
          sleep(10)
          t_Lbl = GetLabelParams(iStr, lastLbl) -- Костыль. Ждем пока появится последняя метка.
        until t_Lbl
      end
      lastLbl = 0

<...>

        lbl_ID = AddLabel(iStr, arr)
        lastLbl = lastLbl + 1
      end


Но лучше, если бы не приходилось изобретать "костыли".
Разработчики! Поправьте на досуге.
 
Ziveleos, здравствуйте.

Ваше обращение получено, проблема изучается. Постараемся в ближайшее время дать ответ.
 
Ziveleos, добрый день!

Описанная в данном инциденте проблема носит синхронизационный характер и может проявляться когда Lua-скрипт очищает метки с графика а терминал в этот момент пытается их отрисовать, например, после смены инструмента на графике. Данная проблема будет устранена в одной из очередных версий программы.
Приносим извинения за причиненные неудобства.
Страницы: 1
Читают тему
Наверх