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

Вниз

real time   Найти похожие ветки 

 
sir_musatov   (2002-04-26 09:14) [0]

подскажите как установить для программы real time, тоесть чтоб пока она не отработает, ничего другово запустить было нельзя, а что было запущено - "приостановило свою работу" ?
понимаю насколько это не красиво и не вежливо


 
KilkennyCat   (2002-04-26 11:10) [1]

ну, я бы сделал так : полноэкранный режим, отлов всех клавиш, и нить с приоритетом реал-тайма. кроме-того, необходимо выкинуть все, что может работать как application.processmessages.
Вот только перерисовка визуальных компонент будет затруднена.


 
sir_musatov   (2002-04-26 14:07) [2]

для установки приоретета в хелпе пишут код
var
SecondProcess TMyThread; { TMyThread is a custom descendant of TThread }
begin
SecondProcess := TMyThread.Create(True); { create suspended – secondprocess does not run yet }
SecondProcess.Priority = tpTimeCritical; { set the priority }
SecondProcess.Resume; { now run the thread }
end;

поясните пожалуста что тут к чему, как узнать имя моего процесса ?


 
KilkennyCat   (2002-04-27 10:50) [3]

Посмотри пример создания нитей в делфи. твой процесс будет в теле процедуры .Execute


 
Vovchik   (2002-04-27 12:24) [4]

> sir_musatov
Вот как надо ставить приоритеты, если у тебя одна нить в процессе:

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

Если нитей много, то приоритет моно ставить при их создании.

НО! Помните, что из-за того, что в Win9x кривой шедулер (реализующий невытесняющую многозадачность), то приоритеты под 9x не работают, по крайней мере так, как они должны работать. Приоритеты нормально работают только в NT-based системах.



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
3-39678
Андрусь
2002-04-15 19:58
2002.05.13
Народ как сделать небазовый элемент


3-39661
Смолин
2002-04-17 12:36
2002.05.13
Как удалить физически


1-39701
ymin
2002-04-29 16:04
2002.05.13
Showmessage(‘Давление должно быть <’ +inttostr(int2*0.8));


3-39677
Socrat
2002-04-16 09:03
2002.05.13
Помогите отучить ADO сжирать память !


14-39826
Alx2
2002-04-03 12:33
2002.05.13
Вопрос, скорее,