Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

потоки


Res ©   (2008-06-09 03:05:00) 

Здравствуйте. Никак не могу понять, почему поток, после завершения кода не хочет сам разрушатся.
Запускаю так:
 for x:=1 to n do
 begin
   tnew[x]:=th.Create(true);
   tnew[x].FreeOnTerminate:= True;    
 end;

Сам поток
procedure th.Execute;
var
proxy,account,smail:string;
int:array[1..30] of integer;
x,n,z:integer;
test:boolean;
begin

end;


Palladin   (2008-06-09 13:43:00) [1]


> Res   (09.06.08 13:39) [4]

а тут прямо только все твои потоки считаются да? :) наивный ЧМ
они у тебя даже не запускаются...


Res   (2008-06-09 13:39:00) [2]


> как определил?

function GetThreadCount():integer;
var
 ThreadSnapshotHandle: THandle;
 ThreadFound: Boolean;
 ThreadEntry: tagTHREADENTRY32;
 ProcessID: Cardinal;
 ThreadCount:integer;
begin
 ThreadCount:=-1;
 ProcessID := GetCurrentProcessId;
 ThreadSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPTHREAD, 0);
 try
   ThreadEntry.dwSize := SizeOf(ThreadEntry);
   ThreadFound := Thread32First(ThreadSnapshotHandle, ThreadEntry);
   if ThreadFound then
   repeat
     if ThreadEntry.th32OwnerProcessID = ProcessID then
       ThreadCount:=ThreadCount+1;
   until not Thread32Next(ThreadSnapshotHandle, ThreadEntry);
 finally
   CloseHandle(ThreadSnapshotHandle);
 end;
Result:=ThreadCount;
end;


Palladin   (2008-06-09 13:26:00) [3]

зачем массив из экземпляров потоков'то заводить?


clickmaker   (2008-06-09 13:20:00) [4]

> после завершения кода не хочет сам разрушатся

как определил?


Джо   (2008-06-09 03:38:00) [5]

Во-первых, вы его вообще даже не стартуете (Где вызов Resume?).
Во-вторых, код метода Execute — кто его вообще съел?


Наверх

Титульная страница Поиск, карта сайта Написать письмо