Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "WinAPI";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.03 c
14-42058
ananimious
2003-10-15 21:03
2003.11.13
Как защититься от спама?


6-41807
LogOUT
2003-09-15 21:23
2003.11.13
Программная пауза модема


1-41567
Vivk
2003-11-04 08:23
2003.11.13
Qreport , FreeReport & толщина линий


4-42218
SDW_syscoder
2003-09-03 11:05
2003.11.13
Работа с устройством через COM порт


3-41053
NewD
2003-10-24 11:49
2003.11.13
При попытке добавить запись вылетает ошибка.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский