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

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

 
BJValentine ©   (2003-04-30 15:15) [0]

Как правильно завершать поток внутри потока? Exit, Abort, Terminate?


 
Digitman ©   (2003-04-30 15:20) [1]

ExitThread()


 
Smithson ©   (2003-04-30 15:20) [2]

Поток - это TThread? Тогда - FreeOnTerminate := True; Terminate.
В цикле главной процедуры потока (Execute) надо писать что-то вроде if Terminated then exit;
Если имеется в виду просто Windows поток, то можно TerminateThread (можно даже ExitThread). Смотри в F1.


 
BJValentine ©   (2003-04-30 15:26) [3]

TThread - да.

FreeOnTerminate:=True;
Terminate;
while not terminated do ;
Exit;

Я правильно понял?



 
Smithson ©   (2003-04-30 15:32) [4]

Да. Но если в
while not Terminated do begin
end;
работает что-то долгое, то и там проверяй.
Последний exit не нужен.


 
BJValentine ©   (2003-04-30 19:29) [5]

Кажись я понял глюк. В потоке я запускаю Rar WinExec-ом и после этого Rar остаётся в процессах открытым, но где здесь подводные камни, ведь Rar по идее должен закрыться сам?



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

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



Память: 0.45 MB
Время: 0.01 c
1-46774
Little Horror
2003-04-29 16:22
2003.05.15
TActionToolBar и TControlBar


14-46965
NetBreaker666
2003-04-24 20:21
2003.05.15
Обработка исключений


6-46867
sancho
2003-03-17 23:10
2003.05.15
О подключении к интернету


1-46767
CD
2003-04-30 15:14
2003.05.15
[pascal] Как получить целочисленный корень...


11-46675
Kirill
2002-08-12 12:53
2003.05.15
Font Dialog




   Наверх