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

Вниз

Поток : перехват завершения.   Найти похожие ветки 

 
SbtON   (2005-01-15 17:43) [0]

Всем привет!
Подскажите, пожалуйста, как мне в потоке отработать событие завершения. Вызов Terminate происходит из основного приложения,
но в потоке есть бесконечный цикл, включающий работу с файлами и т.д. (цикл достаточно длинный)
Хотелось бы уметь моментально останавливать процесс и корректно закрывать открытые файлы.

Если не трудно, подскажите.. Уже намаялся..


 
begin...end ©   (2005-01-15 17:45) [1]

> SbtON   (15.01.05 17:43)

> как мне в потоке отработать событие завершения

Создать обработчик TThread.OnTerminate?


 
SbtON   (2005-01-15 17:52) [2]

Я правильно понял, что этот обработчик ставится в теле потока?

У меня несколько идентичных потоков, запущеных с разными параметрами.. Это завершение нужно для каждого параметра.

И еще я заметил, что потоки достаточно долго останавливаются. Цикл внутри них успевает выполниться, несмотря на то, что terminate уже объявлен!


 
begin...end ©   (2005-01-15 20:06) [3]

> [2] SbtON   (15.01.05 17:52)

> Я правильно понял, что этот обработчик ставится в теле потока?

Перед запуском потока присвойте его свойству OnTerminate какой-нибудь метод, например:

MyThread.OnTerminate := MyThreadTerminate;

где MyThreadTerminate - метод какого-нибудь объекта.



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

Форум: "Основная";
Текущий архив: 2005.01.30;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.039 c
14-1105379317
Progh
2005-01-10 20:48
2005.01.30
Прога для сетевого контроля моего компьютера


14-1103561190
Cerberus
2004-12-20 19:46
2005.01.30
Встерча в самаре


14-1105345891
Kerk
2005-01-10 11:31
2005.01.30
Привет Подгорецкому от Эрики


11-1087803602
Bar
2004-06-21 11:40
2005.01.30
Ошибка при build в KOLProject


1-1106041936
denis24
2005-01-18 12:52
2005.01.30
QuickReport





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский