Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
Октября 07, 2024, 06:18:30 pm
Начало Помощь Поиск Войти Регистрация
Новости:

Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: Про удаление таймера « предыдущая тема следующая тема »
Страниц: [1] Печать
Автор Тема: Про удаление таймера  (Прочитано 5166 раз)
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« : Июля 03, 2013, 01:37:15 pm »

Сейчас смастерил пробный скрипт, в котором используется таймер.
Про Интру как-то и не вспомнил, начал сразу в боевом транзаке экспериментировать.
Сначала одна проблема вылезла, потом другая.
Короче, я несколько раз этот индикатор удалял, а потом снова кидал на то же самое окно. Интервал таймера 1 секунда (periodically).

Вопрос возможно весьма примитивный, но все-таки...
Одним словом, насколько эти таймеры "живучи",  что надо сделать, чтобы их "убить"?
Достаточно ли просто удалить данный индикатор с данного графика?

Все-таки версия боевая, поэтому не хочется, чтобы фантомные таймеры жрали ресурсы.
« Последнее редактирование: Июля 03, 2013, 07:39:18 pm от Олег » Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
White Noise
Full Member
***
Сообщений: 164


White Noise

ICQ Messenger - 411196569
Просмотр профиля Email
« Ответ #1 : Июля 04, 2013, 06:04:06 am »

Вы таймер через переменную делаете ?
Записан
Heller
Разработчики
Hero Member
*****
Сообщений: 1277


Просмотр профиля Email
« Ответ #2 : Июля 04, 2013, 09:28:28 am »

Вообще таймеры убиваются каждый раз при убивании индикатора. Если надо убить раньше, то поможет функция delTimer.
Записан
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #3 : Июля 04, 2013, 11:14:22 am »

Вы таймер через переменную делаете ?

Да.

Вообще таймеры убиваются каждый раз при убивании индикатора. Если надо убить раньше, то поможет функция delTimer.

Меня смутило следующее.

Вот такой пробный скрипт:

Code: [Select]
static X;
static timerID;

function f()
{
X = X;
}

function init()
{
  timerID = setTimer("f", 1000, TIMER_PERIODICALLY);
}

function calc()
{
line [0] = 0;
}

Несколько раз подряд добавляем и удаляем этот "индикатор" на одном и том же графике. Потом просим Транзак показать переменные ATF и он нам показывает "timerID: 4". Ну вот и сложилось впечатление, что это уже четвертый таймер, привязанный к этому графику, и причем, все остальные (3 штуки) живы-здоровы и функционируют в фантомном режиме.
Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
bugem
Full Member
***
Сообщений: 105



Просмотр профиля Email
« Ответ #4 : Июля 04, 2013, 03:48:38 pm »

2 Олег
Не переживайте запускайте сколько угодно. У меня на боевой системе каждые 15 мин запускается по три таймера, ради интереса сейчас в логах посмотрел результат на вечер
Quote
03.07.13;23:45:08;Set_Activation_Delay: FillAndSetStopOrder; delay: 500; timerID:142
Ни какого торможения не замечено (компутер немощный: Р4-1,8Ггц, 500Мб), работает пара Транзаков и Интра одновременно и еще несколько прикладных программ
Записан
White Noise
Full Member
***
Сообщений: 164


White Noise

ICQ Messenger - 411196569
Просмотр профиля Email
« Ответ #5 : Июля 04, 2013, 05:08:51 pm »

timerID:142  - это не количество таймеров на графике, это количество таймеров во всей системе, а т.е. во всем транзаке,  - может быть открыто тысячи окон, и на каждом окне работать по 50 таймеров,...и у каждого таймера (именно для системы транзак ) просто должен быть свой единственный идентификатор (опять же на протяжении сесси открытого транзака). Для чего ? для того чтобы не сбиться ибо событие таймера системное, синхронное ,.... А ведь графики могут и закрываться, новые открываться, таймеры добавляться,...и что получается - как за ними уследишь ? причем идентификатор - это не имя которое присвоено, а именно то порядковое число которое присвоено в определенный момент времени, по шкале 1.2.3.4.5.6.7.8.9.10.11.12....
Записан
Олег
Hero Member
*****
Сообщений: 849



Просмотр профиля Email
« Ответ #6 : Июля 14, 2013, 09:24:08 pm »

bugem и White Noise,  спасибо за разъяснение.

Раз Heller не поправляет, значит, наверно, все правильно.
Записан

Коллеги!
МТС фокусничает!
Будьте бдительны сами и предупредите всех своих хороших знакомых!
Я тоже на днях вляпался.
Схема "фокуса" описана вот здесь:
http://www.forum.sib.mts.ru/viewtopic.php?f=344&t=11381
Heller
Разработчики
Hero Member
*****
Сообщений: 1277


Просмотр профиля Email
« Ответ #7 : Июля 15, 2013, 05:08:39 pm »

Да, всё правильно, поправлять нечего :)
Записан
Страниц: [1] Печать 
Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: Про удаление таймера « предыдущая тема следующая тема »
Перейти в:  


Войти

Powered by MySQL Powered by PHP Powered by SMF 2.0.10 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!