Вниз
Скачать: CL | DM;

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

← →
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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
14-1105613497
koshak
2005-01-13 13:51
2005.01.30
Delphi


1-1105532725
rolex
2005-01-12 15:25
2005.01.30
Как синхронизировать прокрутку двух Listbox ов???


1-1105728940
Ilya___
2005-01-14 21:55
2005.01.30
Как получить индекс выделенной пользователем ячейки Excel?


6-1100142838
Aleks_Grey
2004-11-11 06:13
2005.01.30
Вопрос - как достать информацию из сети?


1-1105689488
Mishenka
2005-01-14 10:58
2005.01.30
Как узнать сколько дней в месяце соответствующему текущей дате?




   Наверх