Вниз
Скачать: 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.027 c
3-1104134072
juice
2004-12-27 10:54
2005.01.30
MySQL


14-1105518608
syte_ser78
2005-01-12 11:30
2005.01.30
Господа, кто писал под Автокад?


14-1105435700
Ozone
2005-01-11 12:28
2005.01.30
Как узнать модель телефона.


1-1105694776
WhiteGuy
2005-01-14 12:26
2005.01.30
Найти файл


1-1105080743
GrayFace
2005-01-07 09:52
2005.01.30
Что такое packed array и packed record?




   Наверх