теперь не нужно создавать экземпляр класса, т.к. он уже создан с именем "timers"
Функции OnTimer также не должно быть в теле программы.
См. описание.
что-то мне шепчет что к методу KillTimer __нельзя__ обращаться из функции-обработчика.
Любимый тут ArrayRemove собъёт цикл опроса массива и получится ошибка "фик поймаешь всемером" :-)
что-то мне шепчет что к методу KillTimer __нельзя__ обращаться из функции-обработчика.
Любимый тут ArrayRemove собъёт цикл опроса массива и получится ошибка "фик поймаешь всемером" :-)
Ну конечно преувеличиваете проблему.
Я думал об этом.
Максимум, что светит, в случае когда одновременно подошло время двух таймеров, стоящих друг за другом в массиве, это то, что второй таймер будет в пропущен в текущем цикле, а сработает в следующем, т.е. через 15,625 милисекунд.
Впрочем, это тоже не порядок. Доработал в версии 1.03.
Спасибо.
Ну конечно преувеличиваете проблему.
Я думал об этом.
Максимум, что светит, в случае когда одновременно подошло время двух таймеров, стоящих друг за другом в массиве, это то, что второй таймер будет в пропущен в текущем цикле, а сработает в следующем, т.е. через 15,625 милисекунд.
Впрочем, это тоже не порядок. Доработал в версии 1.03.
Спасибо.
только не говори, что я придираюсь :-)
если выставить таймер в 100 msc, и уйти в торговую операцию на 15 сек (а это нормально, бывает и больше), то таймер потом начнёт щёлкать каждые 15 msc пока не нагонит.
фича конечно, только странная. Например для опросов по таймеру даже вредная.
только не говори, что я придираюсь :-)
если выставить таймер в 100 msc, и уйти в торговую операцию на 15 сек (а это нормально, бывает и больше), то таймер потом начнёт щёлкать каждые 15 msc пока не нагонит.
фича конечно, только странная. Например для опросов по таймеру даже вредная.
Добавлена функция, с помощью которой можно получить количество пропущенных событий таймера для контроля стабильности работы:
int GetLost(int milliseconds, TFunc fun); // Получаем количество пропущенных событий таймера для контроля стабильности работы. // Если ноль, то пропусков нет. Если -1, то не найден такой таймер.
Версия 1.05
Добавлена функция, с помощью которой можно изменить период одного из конкретных таймеров:
void NewPeriod(int old_milliseconds, TFunc fun, int new_milliseconds); // Меняет периодичность данного таймера. Это позволяет создавать таймеры // с динамическим периодом обращения, или автоподстройкой.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Multi Timer:
Простой класс, который пригодится, когда Вам необходимы несколько таймеров с независимой обработкой и неконфликтующие между собой.
Автор: Nikolai Semko