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

Поток   Найти похожие ветки 

 
GanibalLector ©   (2004-09-24 22:16) [0]

Имею поток,в котором создаю документы Word.Так вот,процесс этот весьма длителен и пользователю иногда необходимо отменить эту длительную операцию.
Убив поток,у меня остается висеть два скрытых процесса Word что не есть хорошо.Как быть???Нужен совет.
З.Ы. Убиватеть все процессы Worda не желательно,т.к. пользователь мог пооткрывать различные документы.


 
GanibalLector ©   (2004-09-24 22:56) [1]

Так вот,процесс этот весьма длителен и пользователю иногда необходимо отменить эту длительную операцию.
Читать как : Так вот,операция эта весьма длительна :)
Заговорился совсем.


 
Cobalt ©   (2004-09-24 23:08) [2]

В характерных точках потока предусмотреть "аварийное завершение" с проверкой If self.Terminated
Вот и всё.


 
Cobalt ©   (2004-09-24 23:09) [3]

Аварийное - в смысле, с освобождением ресурсов и подчищением всех следов за собой.


 
GanibalLector ©   (2004-09-24 23:14) [4]

Как понять
характерных точках потока предусмотреть ???
Что Вы имеете ввиду под характерными???


 
Cobalt ©   (2004-09-25 00:34) [5]

Ну, перед каждым созданием нового объекта, в цикле...
Вообще периодически проверять.


 
Piter ©   (2004-09-25 00:52) [6]

GanibalLector ©   (24.09.04 22:16)
Убив поток


а как ты убиваешь поток?

Убивать надо корректно, методом Terminate, который тупо присваивает флаг FTerminate (или как там) в true.

Вот и проверяй в характерных местах кодах этот флаг (If Terminated then...) - в случае True принимай соответствующие действия по освобождению занятых ресурсов...



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

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



Память: 0.46 MB
Время: 0.02 c
8-1091359722
Itap
2004-08-01 15:28
2004.10.31
"Распознать" звук


8-1091457345
DDDeN
2004-08-02 18:35
2004.10.31
Картинка по пропорциям


14-1097314379
race1
2004-10-09 13:32
2004.10.31
раскладка


1-1097693549
volser
2004-10-13 22:52
2004.10.31
Левый и правый alt, ctrl, shift


6-1093178110
Alena
2004-08-22 16:35
2004.10.31
Сокеты, Принятые файлы некорректны относительно исходных ?!




   Наверх