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

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

Долгое выполнение программы или разграничение процессов [D7, WinXP]


Aleks ©   (2005-01-23 17:10:00) 

Доброго времяни суток! Доки подскажите можно ли избавиться от такой неприятности. Написал программку которая по заданному ресурсу в инете тянет картинки, НО пока она тянет я немогу её даже в трею скинуть она буквально не отвечает не на какие действия. Я понимаю, что пока цикл всех процессов скачивания не закончится то так и будет. Можно ли как то отделить данный процесс или запустить эти операции в отдельном процессе так, что б в основной форме (программе), я мог бы выполнять какие либо действия. Например разрешать или запрещать отображение только, что скаченных рисунков, проигровать музыку  и т. д.      ??????????????


Aleks   (2005-01-23 19:23:00) [1]

ок попробую.


kaZaNoVa   (2005-01-23 17:50:00) [2]

поиграй с приоритетами

Procedure SetProgramPriority;
Var
ProcessHandle : THandle;
Begin
ProcessHandle := OpenProcess(PROCESS_SET_INFORMATION, False, GetCurrentProcessID);
   SetPriorityClass(ProcessHandle, REALTIME_PRIORITY_CLASS);
CloseHandle(ProcessHandle);
   SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL);
End;


Aleks   (2005-01-23 17:20:00) [3]

Извените может я не так написал но меня интересует. Поможет ли мне в данном случае разграничение процессов или нет.


jack128   (2005-01-23 17:16:00) [4]

Aleks   (23.01.05 17:10)
Можно ли как то отделить данный процесс или запустить эти операции в отдельном процессе так,

можно и в отдельном процессе, но лудше использовать потоки. Статьи с примерамии использования потоков есть на этом сайте..


Fktrc   (2005-01-23 17:12:00) [5]

Aleks   (23.01.05 17:10)
> Можно ли как то отделить данный процесс или запустить
> эти операции в отдельном процессе

TThread+F1


Наверх

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