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

Вниз

Приоритет   Найти похожие ветки 

 
Sergo ©   (2002-05-06 13:13) [0]

Как своей проге можно назначить 31 приоритет?


 
drpass ©   (2002-05-06 14:16) [1]

А нафиг?


 
Sergo ©   (2002-05-06 14:58) [2]

А чтоб винда не отвлекалась от выполнения моей проги.


 
Anatoly Podgoretsky ©   (2002-05-06 15:08) [3]

Тебе надо не 31, а IDLE_PRIORITY_CLASS


 
Sergo ©   (2002-05-06 15:28) [4]

>Anatoly Podgoretsky ©
А это что такое?


 
ZZ   (2002-05-06 16:19) [5]

Sergo ©
>А это что такое?
Это чтоб винда не отвлекалась ... на твою прогу :)


 
Sergo ©   (2002-05-06 16:31) [6]

>ZZ
:))
А где это выставить?


 
Anatoly Podgoretsky ©   (2002-05-06 17:00) [7]

Лучше в .dpr или в главной форме


 
Asteroid ©   (2002-05-06 21:05) [8]

Можно и так:
SetPriorityClass( GetCurrentProcess(), IDLE_PRIORITY_CLASS );


 
Sergo ©   (2002-05-07 08:05) [9]

>Asteroid ©

SetPriorityClass( GetCurrentProcess(), IDLE_PRIORITY_CLASS );

При вставке в главную форму, она начинает искажать данные :((


 
Anatoly Podgoretsky ©   (2002-05-07 11:18) [10]

Не должна, если написана правильно, низкий приоритет и что то маштабное, визуальное не совместимы.


 
Sergo ©   (2002-05-07 11:48) [11]

Моя прога обрабатывает входной сигнал на звукаху, желательно в realtime, поэтому я и хочу поставить ей высокий приоритет, а эта функция искажает график сигнала :((


 
SPeller ©   (2002-05-07 11:48) [12]

Sergo © (07.05.02 08:05)
Ты всё сделал как они сказали ?


 
Sergo ©   (2002-05-07 14:20) [13]

Я поставил эту функцию в FormCreate и она начала искажать графическое изображение сигнала


 
Anatoly Podgoretsky ©   (2002-05-07 16:17) [14]

Sergo © (07.05.02 11:48)
Так тогда тебе нужен REALTIME_PRIORITY_CLASS


 
Fellomena   (2002-05-07 16:21) [15]


Sergo © (07.05.02 08:05)
>Asteroid ©
SetPriorityClass( GetCurrentProcess(), IDLE_PRIORITY_CLASS );
При вставке в главную форму, она начинает искажать данные :((


Это каким же это образом она начинает искажать данные?
И кстати, какие данные?


 
Raptor ©   (2002-05-07 22:45) [16]

С твоих слов я понял, что окно прсто-напросто не отрисовывается. Но что ты ожидал если поставил своему процессу самый низкий приоритет. Пока другие не отработают твой процесс не получит возможности что-то делать и, как результат, твое окно не может отрисоваться.


 
Sergo ©   (2002-05-08 08:11) [17]

>Anatoly Podgoretsky ©
Sergo © (07.05.02 11:48)
Так тогда тебе нужен REALTIME_PRIORITY_CLASS

Я поставил SetPriorityClass( GetCurrentProcess(), REALTIME_PRIORITY_CLASS); Правильно? (Вроде бы все работает).

>Fellomena
SetPriorityClass( GetCurrentProcess(), IDLE_PRIORITY_CLASS ); Из приличной синусоиды делает какую то лабуду :))


 
Sergo ©   (2002-05-08 11:59) [18]

Да... рано радовался :((
Если запустить прогу и минут через пять попытаться выключить ее, то она вешает наглухо комп. Почему?


 
Fellomena   (2002-05-08 15:19) [19]

2 Sergo © (08.05.02 08:11):
Странный ты какой-то 8)
SetPriorityClass( GetCurrentProcess(), IDLE_PRIORITY_CLASS );
Устанавливает процессу базовый приоритет равный 4, нормальный приоритет 8, т.е. если твой процесс имеет приоритет типа IDLE_PRIORITY_CLASS, то диспечер будет отдавать твоему процессу тики, только когда система "не загружена".

SetPriorityClass( GetCurrentProcess(), REALTIME_PRIORITY_CLASS);
Устанавливает процессу базовый приоритет равный 28, максимальный приоритет 31, т.е. если твой процесс имеет приоритет типа REALTIME_PRIORITY_CLASS, то диспечер отдаёт твоему процессу всё время, получается что-то типа невытесняющей многозадачности.
И виснет всё тоже именно поэтому, т.к. система "забита" твоим процессом, т.е. у неё нет свободных ресурсов для обработки всех остальных запросов и отвиснуть она может только в случае, если твой процесс завершит работу.


 
paul_shmakov ©   (2002-05-08 20:11) [20]

2 Sergo:
резюме: не стоит впадать в крайности - ни idle priority, ни тем более realtime не нужно ставить своему процессу. если нужно все таки повысить приоритет, то ставьте HIGH_PRIORITY_CLASS процессу и THREAD_PRIORITY_HIGHEST или THREAD_PRIORITY_TIME_CRITICAL потоку, считывающему данные с устройства.


 
Anatoly Podgoretsky ©   (2002-05-09 11:11) [21]

Ну зя что боролся, на то и напоролся, хотел "желательно в realtime" снизь свои требования и все будет хорошо. А ты еще требовал и выше, чем REALTIME, а именно 31, то есть REALTIME+3


 
слон   (2002-05-10 05:23) [22]

Приятно посмотреть, как умные люди копья ломают


 
Sergo ©   (2002-05-12 08:16) [23]

Спасибо всем!
С HIGH_PRIORITY_CLASS все работает нормально.
А какую функцию нужно поставить для THREAD_PRIORITY_TIME_CRITICAL?


 
Anatoly Podgoretsky ©   (2002-05-12 11:41) [24]

SetThreadPriority


 
Sergo ©   (2002-05-12 11:49) [25]

Спасибо.



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

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

Наверх




Память: 0.52 MB
Время: 0.021 c
3-47085
Жорник Александр
2002-06-20 22:51
2002.07.15
База данных в виде дерева (tree-grid), можно ли реализовать ?


1-47353
nimble
2002-07-01 07:26
2002.07.15
ComboBox - Цвет


3-47181
Dark Programmer
2002-06-17 09:48
2002.07.15
Подскажите пжлста как удалить все записи из таблицы?


1-47258
easy
2002-06-27 17:08
2002.07.15
Битмапы


1-47316
SDv-503
2002-07-01 00:17
2002.07.15
Как программно нажать на .... (+)