Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Компонент таймер

5.1K
14 мая 2009 года
Karrde
88 / / 15.10.2007
И опять вопрос по visual 2005. Ставлю компонент timer. Алгоритм проги такой: каждые 20 мс вызывается функция таймера, при вызове берется кусок данных и засылается в другой класс. как только в классе-получателе накапливается достаточно данных, он производит над ними действия.
Проблема в том, что, по идее, обработка должна производиться раз в 15 секунд(то есть после 750 проходов). И на моем компьютере так и происходит. а вот тестил на ещё 4-х компах(причем всех мощнее моего), там эти 750 проходов происходят ровно за 25 секунд, то есть идет большое отставание по времени.
В чем может быть дело? По идее, действия, выполняющиеся при каждом вызове таймера, просты, и не должны сильно задерживать выполнение
5
15 мая 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: Karrde
И опять вопрос по visual 2005. Ставлю компонент timer.

Точность 20мс - это не для компонента Timer с тулбокса (он работает через очередь сообщений WinMain-а).
Попробуйте воспользоваться классом System.Threading.Timer - он с вашей задачей доложен справляться лучше, так как работа колбэка происходит в отдельном потоке, на прямую не зависящем от потока с окнами.

5.1K
15 мая 2009 года
Karrde
88 / / 15.10.2007
мдя. глюки.
вызываю в этом таймере класс. пока в нем начинает обсчитываться, действия в таймере идут дальше. и к тому времени, когда подходит к считыванию выходных данных из класса, там ещё ничего не просчитано. То есть по идее, надо останавливать поток таймера до тех пор, пока в классе все не просчитается. ?
5
15 мая 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: Karrde
мдя. глюки


Может лучше код покажете?

11
15 мая 2009 года
oxotnik333
2.9K / / 03.08.2007
тут кое что может прояснить ситуацию
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог