Einzelnen Beitrag anzeigen

Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#1

Mehrere Threads gleichzeitig...

  Alt 31. Jan 2006, 15:34
hi,

ich möchte mehrere Threads eines Typs gleichzeitig ausführen.

dazu habe ich mir überlegt:

ich schreibe mir ganz normal meinen Thread als ableitung von TThread
dann mache ich mir nen array davon und erstelle in ner schleife alle und führe sie aus.

das ganze sieht dann so aus:
Delphi-Quellcode:
    Thr: array [1..Cnt] of TMyThread;

procedure TForm1.Button1Click(Sender: TObject);
var i:Integer;
begin
  for i:=1 to Cnt do
    begin
    Thr[i]:=TMyThread.Create(True);
    //Noch paar Property setzen
    Thr[i].Execute;
    ShowMessage('Thread '+IntToStr(i)+' Executed');
    end;
end;
interessanterweise wird aber nur ein Thread erstellt und ausgeführt...(Cnt ist natürlich >1 )

Anhaltspunkte:
- ShowMessage erscheint nicht
- Ausgabe (via Synchronize) kommt nur vom ersten Thread
- Access Violation beim freigeben ab dem zweiten Thread...

warum macht der nicht einfach in der schleife weiter?
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat