Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

НИЗКИЙ ПРИОРИТЕТ, HELP ME


Wman ©   (2002-02-06 12:14:00) 

Hi
Нужно выставить самый низкий приоритет для проекта в dpr файле
а то он подтормаживает систему (как выставлять в экземплярах TThread я знаю, а как в dpr нет)!!!

main.dpr

begin
...
Трудоемкие операции
...
end;


Aleksey Pavlov   (2002-02-06 15:38:00) [1]

>>Wman:
Вы, наверное, путаете понятия базовогоприоритета (т.е. приоритета процесса) и дельтаприоритета (т.е. приоритета отдельно взятого thread-а).
Базовые приоритеты могут иметь значения в диапазоне 0-32, где 8 соответствует NORMAL_PRIORITY_CLASS, а 28 - REALTIME_PRIORITY_CLASS;
Дельта приоритеты изменяются в диапазоне от -15 до 15 ;
Устанавливая приоритет потока (thread) Вы устанавливаете именно дельта приоритет, но не тот, что будет иметь этот поток в системе.
Таким образом "реальный" приоритет отдельного потока (thread) получается путём комбинации базового приоритета процесса, в контексте которого работает поток, и дельта приоритета самого потока.


VuDZ   (2002-02-06 15:05:00) [2]

при IDLE твой код будет работать только в момент простоя проца - я так рендерю некоторые вещи в 3dstudio max"е под фильм :)


Юрий Зотов   (2002-02-06 14:55:00) [3]

SetPriorityClass(GetCurrentThread,...) - это ошибка.
Надо GetCurrentProcess.


Wman   (2002-02-06 14:38:00) [4]

Господа, в чем прикол?
поставил:

SetPriorityClass(GetCurrentThread, REALTIME_PRIORITY_CLASS);
SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL);

Загрузка проца упала со 100% до 15-20, а когда ставил приоритет IDLE или LOW как была 100% так и осталась
????
D5, NT4.0


Алексей Петров   (2002-02-06 12:38:00) [5]

SetThreadPriority(GetCurrentThread(), tpLower)


Наверх

Титульная страница Поиск, карта сайта Написать письмо