Forum: Object-Pascal / Delphi-Language
Delphi
by walter_b,
27. Jul 2008
Ich weiss nicht genau, was du wissen willst, aber es ist so: Die 4 Threads gehen alle die selbe Berechnung durch, starten jedoch an anderen Punkten. Jeder Thread macht 5 Mio Berechnungen. Sobald einer das richtige Resultat gefunden hat, sollen die 4 Threads beendet werden. Wenn ich jetzt nach jeder Berechnung in allen 4 Threads ein If reinbaue, dann gibt das bei mir nach Adam Riese 20 Mio mal ^^
Forum: Object-Pascal / Delphi-Language
Delphi
by walter_b,
27. Jul 2008
Also das mit dem TThread habe ich benutzt. Aber wenn ich da jetzt nochmal ein if reinpacken muss, schlägt sich das schon ziemlich auch die Zeit nieder, wenn es einige Male aufgerufen wird, nicht?
Und wie genau meinst du das mit dem "Terminate"?
Meine Definition:
TMyOwnThread1 = class(TThread)
protected
procedure Execute; override;
Forum: Object-Pascal / Delphi-Language
Delphi
by walter_b,
27. Jul 2008
Das wäre die, ich sage mal, unschöne Variante. Das ganze geht ziemlich um Geschwindigkeit und wird auch oft ausgeführt. Wenn dann da plötzlich 20 Millionen Mal ein if überprüft wird, dann ist das nicht besonders gelungen. Gäbe es noch eine andere Möglichkeit, die direkt zu beenden?
Forum: Object-Pascal / Delphi-Language
Delphi
by walter_b,
27. Jul 2008
Hallo zusammen
Bei mir im Programm laufen 4 Threads gleichzeitig und ich würde gerne, sobald in einem Thread gewisse Umstände eingetroffen sind, alle 4 Threads auf einmal beenden. Mit "EndThread" wird leider nur der Thread beendet, in welchem ich dies auch reinschreibe, aber Einfluss von diesem aus auf die anderen, kann ich nicht nehmen, bzw. ich weiss nicht, wies geht. Weiss jemand von euch,...