![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Kak pravilino UBIVATI TThread'i ? [D6, D7, WinXP]
AndersoNRules © (2004-04-14 19:11:00)Privet! Vopros v tom kak pravilino zavershati Thread'i! voznik on potomu shto oni u menya vsegda tormozyat, naprimer:
esti Thread s imenem Tp , priority=tpNormal ;
ya evo zavershayu:
Tp.Terminate; Tp.Free;
a on u menya tormozit ocheni.
kstati, vot shto on delaet, esli ato shto-to menyaet:
procedure TProgressThread.Execute;
begin
while not Terminated do
smth;
end;
Budu ocheni blagodaren !
AndersoNRules (2004-04-14 19:44:00) [1]Izvenyayusi, vseo rabotaet otlichno !
vsem spasibo !
AndersoNRules (2004-04-14 19:42:00) [2]pridumal takuyu veshi:
peremennaya B:boolean=false;
Noviy Kod:
procedure TProgressThread.Execute;
begin
while (not Terminated) and (not B) do
smth;
end;
kogda nujno zavershati Thread prisvaivayu B:=true;
kazalosi bi vseo doljno biti ok, no vseo ravno tormozit,
zakrivaezza cherez 5~6 secunde posle B:=true;
AndersoNRules (2004-04-14 19:34:00) [3]vseo ravno tormozit
miek (2004-04-14 19:15:00) [4]Нефиг все процессорное время-то захватывать.
while not Terminated do
begin
smth;
sleep( 0);
end;