Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.031 c
1-1079612520
sav
2004-03-18 15:22
2004.04.04
Дерево TreeView


1-1079015167
MetalFan
2004-03-11 17:26
2004.04.04
TRichedit, WM_SETZOOM и EM_FORMATRANGE


4-1074605453
Bers01
2004-01-20 16:30
2004.04.04
Перетаскивание окна(формы)


1-1079480653
Villain
2004-03-17 02:44
2004.04.04
Чтение файла.


3-1078897962
Flagman
2004-03-10 08:52
2004.04.04
Как приконнектиться к Ораклу?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский