Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.03.17;
Скачать: CL | DM;

Вниз

По потокам (Thread)   Найти похожие ветки 

 
Programist   (2003-03-04 16:06) [0]

Создаю поток:


M: TMyThread;
...
begin
M:=TMyThread.Create(False);
M.FreeOnTerminate:=True; //чтобы он завершился как Execute завериштся...
end;


1. Но вот как ему потом M.Free сделать???
2. И как его можно заврешить раньше, если цикла внутри нет, который бы проверил M.Treminated?


 
Strumpf ©   (2003-03-04 16:27) [1]

>Но вот как ему потом M.Free сделать???

Он сам убьется после завершения Execute.


 
MBo ©   (2003-03-04 16:34) [2]

вот только в конструктор нужно передать True, а после установки FreeOnTerminate сделать Resume


 
Programist   (2003-03-05 09:55) [3]

toStrumpf - точно убъётся???

toMBo - понял.


А как в поток передать изначально параметры?!


 
REA ©   (2003-03-05 10:03) [4]

До запуска (наверно) можно обычные переменные класса установить.

>2. И как его можно заврешить раньше, если цикла внутри нет, который бы проверил M.Treminated?

А вот это уже не так просто - стандартный Free насколько я помню выставляет Terminated и ждет завершения потока. Можно попробовать Suspend+Free, но тоже осторожно.
Дальше мои домыслы и безосновательные утверждения:
Там появляется какая-то разница между просто выходом и выходом при выходе из приложения или DLL. В разных версиях Delphi механизм выхода из потока разный.


 
NailS ©   (2003-03-05 12:16) [5]


> И как его можно заврешить раньше, если цикла внутри нет,
> который бы проверил M.Treminated?


А что там есть?

> Можно попробовать Suspend+Free, но тоже осторожно.

Не поможет. В деструкторе будет ожидаться завершение потока (D6).

BOOL TerminateThread(
HANDLE hThread, // handle to thread
DWORD dwExitCode // exit code
);




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

Текущий архив: 2003.03.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
1-54076
zergey
2003-03-05 11:28
2003.03.17
Как использовать COM объект


6-54127
Cosmic
2003-01-26 14:59
2003.03.17
Имена рабочих групп


1-54019
.::D.e.M.o.N.i.X::.
2003-03-06 19:55
2003.03.17
Вопрос для знающих ASM в среде Delphi...


14-54317
Supreme 2
2003-03-01 02:11
2003.03.17
Скоро меня неделю не будет


14-54315
Anatoly Podgoretsky
2003-03-01 19:50
2003.03.17
Именинники 1 марта