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

Вниз

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

 
sav   (2004-03-18 09:54) [0]

Как завершить дополнительный поток наполнения компонента "Дерево"


 
Digitman ©   (2004-03-18 10:01) [1]

точно так же как и завершить поток наполнения компонента "Кустарник")

при чем здесь "Дерево" или "не Дерево" ?

алгоритм твоей поточой ф-ции, делай она хоть "Дерево" хоть "Кустарник", должен тем или иным образом предусматривать периодическую/эпизодическую проверку некоего "флага", предписывающего поточной ф-ции как можно быстрей завершить работу предусмотренного ей алгоритма и вернуть управление

"флаг" должен взводиться тем код.потоком, который заинтересован в завершении интересующего тебя код.потока


 
sav   (2004-03-18 10:12) [2]

Я завершаю процесс при помощи Terminate
Однако при закрытии формы выпадает ошибка Процесс не завершен


 
Digitman ©   (2004-03-18 10:20) [3]


> Я завершаю процесс при помощи Terminate


да не процесс ты завершаешь, а как раз взводишь тот самый флаг

кодовый же поток волен реагировать или не реагировать на состояние этого флага ... у тебя. очевидно реакция эта не предусмотрена, оттого и проблемы

procedure TMyThread.Execute;
begin
 while not Terminated do // вот она, проверка состояния флага !!
 begin
   //здесь делаешь что-то, желательно не слишком длительное по времени, чтобы как можно чаще проверять состояние флага
 end;
end;


 
sav   (2004-03-18 11:19) [4]

Как раз выполняется очень длительное по времени
Есть ли какая нибудь процедурка остановки?


 
Digitman ©   (2004-03-18 11:31) [5]


> Как раз выполняется очень длительное по времени


алгоритм циклический там ? если нет - переделывай в циклический, так чтобы при каждой итерации проверять флаг и немедленно завершать цикл как положено

все остальные программные решения - через "причинное место" и приведут тебя к печальным последствиям


 
sav   (2004-03-18 12:10) [6]

Спасибо за совет!



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
1-1079343131
Jager
2004-03-15 12:32
2004.04.04
Как заставить программу запускаться при закгузке в защ. режиме


3-1078920200
Kein
2004-03-10 15:03
2004.04.04
Сохранение массива в базе


7-1074601161
Application
2004-01-20 15:19
2004.04.04
Процесс и память


1-1079615774
Serg Guk
2004-03-18 16:16
2004.04.04
Как определить имеет ли Юзер права администратора?


1-1079416363
olegy
2004-03-16 08:52
2004.04.04
frame