Форум: "Основная";
Текущий архив: 2002.05.13;
Скачать: [xml.tar.bz2];
Вниз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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c