Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

Программа замедляется через несколько секунд...   Найти похожие ветки 

 
Wild Sam   (2003-09-15 16:35) [0]

Всем привет. Пишу скринсэйвер, но под одной из версий XP столкнулся с такой проблемой. Иногда программа (которая работает в цикле) через несколько секунд после запуска замедляет свою работу, иногда сразу начинает тормозить, иногда работает нормально. Кто сталкивался с чем-то подобным, хоть с какого края надо начинать искать ошибку???
Скринсэйвер писал на основе распростаненной статьи "Профессиональное создание скринсэйвера на дельфи", ну, та, где размер кода получается 20 кб...


 
Songoku ©   (2003-09-15 16:46) [1]

Попробуй создать отдейный поток (CreateThread). И запихнуть туда функцию каторая рисует - тоесть создай там отдельный цыкл. И увиличь у этого потока приоритет.
p.s. Сильно не увиличивай приоритет это может привисти к фатальной ситуации!!!


 
ZEE ©   (2003-09-15 16:48) [2]

>Wild Sam (15.09.03 16:35)
>Иногда программа (которая работает в цикле)
хм... в цикле? а может все же SetTimer + WM_TIMER
а замедления - да замечал такое, причем не только в своих сейверах, но я предполагал что это винда что-то лопатит поэтому и тормоза...


 
Wild Sam   (2003-09-15 17:09) [3]

У меня цикл организован так. Создан поток, который главному окну периодически посылает сообщение WM_Paint, а на это сообщение повешена процедура прорисовки.


 
Songoku ©   (2003-09-15 17:21) [4]

Поробуй синхронизировать эти потоки!!!


 
andre ©   (2003-09-15 23:01) [5]

Попробуй сделать через таймер, а не через WM_PAINT. Лично у меня WM_PAINT загружает проц капитально, а если рисовать на дочернем окне (через WM_PAINT опять-таки), то всё работает как надо. В чём трабла-сам не пойму.



Страницы: 1 вся ветка

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
1-41710
Layner
2003-11-03 19:33
2003.11.13
Как форму показанную по form.show закрыть, если она открыта


3-40866
Term
2003-10-20 16:41
2003.11.13
Как правильно обрабатывать событие OnFilterRecord?


1-41605
LastLamer
2003-10-26 23:00
2003.11.13
перехват изменения свойства объекта


3-40972
Tumcoat
2003-10-17 07:27
2003.11.13
Ошибка при работе с ADOQuery


14-42104
ZeroDivide
2003-10-23 08:23
2003.11.13
Кто как борется со спамом?