Comanche

Проблема с АПИ-таймером

09.01.2011, 19:12. Показов 1615. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Чё-то у меня первый раз такая бяка случается.
Привык доверять АПИ-решениям гораздо больше, чем решениям через штатные средства бэйсика; в частности, давно уже использую АПИ-шный таймер заместо контрола Timer. И всегда всё было тип-топ, а тут... сказано ему - моргать через РАВНЫЕ промежутки времени! а он, гад, моргает НЕРАВНОМЕРНО!!! Неужто на него может оказывать влияение 'загруженность' вызывающего приложения? и вообще - что на него может оказывать влияние? Я раньше полагал, что точнее АПИ-шного таймера ничего не бывает... ан-нет, фигушки (

Какие идеи?!
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.01.2011, 19:12
Ответы с готовыми решениями:

проблема с таймером
Добрый вечер. Начал недавно заниматься программированием микроконтроллеров (использую CodeVisionAVR), и подойдя к работе с таймерами...

Проблема с таймером
Здравствуйте. У меня проблемка. Есть такой код: using System; using System.IO; using System.Linq; using System.Collections.Generic;...

Проблема с таймером
Здравствуйте. Вылез подводный камень при работе с таймером. var timer = setTimeout(function run() { ... ...

11
Messir
09.01.2011, 21:17
какой у твоей проги приоритет? Возможно, кто-то с бОльшим приоритетом активно кушает процессорное время.
Еще: это везде так выполняется? или же только на отдельно взятой машине?
И еще: может, это не таймер, а именно код, вызывающий 'моргание', тормозит неравномерно?
2 / 2 / 1
Регистрация: 18.10.2007
Сообщений: 1,748
10.01.2011, 01:25
Команч, ты случаем не FlashWindow используешь?
у меня оно тоже неравномерно моргало....
0
Comanche
10.01.2011, 12:31
2Messir:
ага... ты навёл меня на мысли )
Буду проверять!

2Alexey:
Не-а, Shell_NotifyIcon.
RedrawWindow (для трейного ToolbarWindow32; сразу после изменения иконки) не помогает.
Comanche
13.01.2011, 19:23
2Messir:
у меня в проге была проверка наличия соединения с Интернет, которая выполнялась раз в три секунды. Т.к. проверка была сделана через прямой 'пинг' Yahoo (чтоб наверняка и чтоб работало и для модемных соединений и для LAN), то в этот момент оно всё и притормаживало, как выяснилось ) запретил проверку на то время, пока жив 'моргательный' таймер - и всё стало лучше (хотя тоже не идеально).

Может, до кучи сделать так, чтобы на время 'моргания' прога делала себе приоритет HIGH или вообще REAL-TIME?! ;-)
Messir
14.01.2011, 07:58
в отдельный тред, думаю, лучше выделить. и у треда приоритет поставить побольше
Messir
14.01.2011, 08:12
Кстати, RealTime низзя ставить!
Иначе на время моргания ВООБЩЕ ничего толком работать не будет (пока не завершится поток, выполняющийся с приоритетом RealTime), что не приемлемо
Comanche
14.01.2011, 12:54
>> в отдельный тред, думаю, лучше выделить. и у треда приоритет поставить побольше

вот, блин, и повод разобраться с потоками )
Comanche
14.01.2011, 19:00
2Messir:
Пытаюсь поднять приоритет для своей проги:
Code
1
2
SetThreadPriority GetCurrentThread, THREAD_PRIORITY_HIGHEST
SetPriorityClass GetCurrentProcessId, HIGH_PRIORITY_CLASS
Затем смотрю в 'Process Viewer' - как приоритет процесса был 'Normal', так и остался. Аналогично - в 'Диспетчере Задач': как колонка 'Базовый приоритет' показывала 'Средний', так и показывает. Что я делаю не так?

Подозрение есть: в MSDN сказано про аргумент 'hProcess' функции SetPriorityClass следующее:

Windows NT: The handle must have the PROCESS_SET_INFORMATION access right. For more information, see Process Objects.

У меня Win2000. М.б. в этом дело? Нужно ли использовать функцию SetSecurityInfo? если да, то как? (ни разу с ней не работал)
Comanche
17.01.2011, 12:45
Messir, help me please!!!
Messir
24.01.2011, 22:58
1. Итак:
>> SetPriorityClass GetCurrentProcessId, HIGH_PRIORITY_CLASS
Какой же ProcessId первым параметром, когда туда хендл указывать надо?!
2. По поводу PROCESS_SET_INFORMATION - это при открытии процесса указываешь, никакого SetSecurityInfo не нужно...
Comanche
25.01.2011, 11:34
Спасибо!!!
Меня тоже смутило, что вместо хэндла стоит ID - но так написано в API Guide :-))
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.01.2011, 11:34
Помогаю со студенческими работами здесь

Проблема с таймером =(
Я запускаю таймер в "Form1_load" пытаюсь остановить событии timer1_Tick, но условие не работает, может это я криворук, что-то не так...

Проблема с таймером
Почему на Delphi XE4 в "Таймере" не работает следующий код: procedure TForm1.Timer1Timer(Sender: TObject); var s : integer; ...

проблема с таймером 1
написал прогу в которой работает таймер1 в реале не рабоает, почему не понятно #include <16F1827.h> #fuses ...

Проблема с таймером Timer
Всем доброго времени суток не понимаю почему обычный таймер не хочет работать первый раз заходит а второй раз уже не хочет ? Заранее...

Проблема с таймером TIM2
Добрый день! Нужна ваша помощь. Проблема в том, что в режиме отладки, сразу после включения таймера (TIM2->CR1 |= TIM_CR1_CEN;),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: показать затраченные материалы за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В качестве. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru