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

Вниз

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

 
Vladik   (2005-11-16 21:35) [0]

привет народ
подскажите как правильно создать поток и уничтожить его
если критереев для уничтожения потока два  
1....  в циклической проверке внутри потока было выявлено что поток больше не нужен

2.... поступила команда из потока главной формы  

пока ети условия не выполнились поток крутится в замкнутом цикле выполняя основную работу


 
Leonid Troyanovsky ©   (2005-11-17 08:21) [1]


> Vladik   (16.11.05 21:35)  

> 1....  в циклической проверке внутри потока было выявлено
> что поток больше не нужен

> 2.... поступила команда из потока главной формы  


while not Terminated do
Т.е., остановить поток из первичного можно путем Terminate.

Только следует помнить, что выполняемое внутри цикла не
должно быть слишком громоздким, чтобы вторичный поток
мог оперативно откликаться на оный сигнал.

--
Regards, LVT.


 
Digitman ©   (2005-11-17 08:24) [2]


> 2.... поступила команда из потока главной формы  


в каком виде должна поступить эта команда ?
от этого и решение зависит напрямую ..


 
vladik   (2005-11-18 18:19) [3]

я делал так в execut нити написано
------------------------------------
begin
while (stopall = false) and (stopthrd=false) do
workthrd; // основная работа нити
end;
-------------------------------------
stopall:boolean ;//видна во всем пpоекте
как тока надобность в потоках отпадает основной поток ставит stopall:=true  

stopthrd:boolean ;// у каждого потока своя и меняется в проседуре workthrd
и в етом случае получается слишком длинный выход stopthrd уже равен true
но workthrd ещё не завершилась
как завершить нить сразу после того как было выявлено что она не нужна?

или существует более правильное решение ??



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

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

Наверх




Память: 0.47 MB
Время: 0.05 c
11-1112871733
Fanny
2005-04-07 15:02
2005.12.04
Утечки памяти в проектах KOL/MCK


11-1113244167
Sup
2005-04-11 22:29
2005.12.04
KOLThread help


5-1114449399
FunkyByte
2005-04-25 21:16
2005.12.04
Как отключить модуль от пакета?


14-1131868987
QuasiLamo
2005-11-13 11:03
2005.12.04
mini DVD mp3 Player


14-1131561267
ArtemESC
2005-11-09 21:34
2005.12.04
Зашифрованный диск...