Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
Comanche

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

09.01.2011, 19:12. Показов 1581. Ответов 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
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru