Eben bin ich in den Genuss einer TParallel-For-Schleife gekommen. Aber leider weiß ich nicht wie man die abbricht.
Wenn meine Abbruchbedingung zutrifft dauert es noch mehrere Sekunden, also genau so lange wie die Schleife noch hätte durchlaufen müssen, bis wirklich Schluss ist
Delphi-Quellcode:
TParallel.For(0, FListLocal.Count - 1,
procedure(i_parallel: Integer; LoopState: TParallel.TLoopState)
begin
if LoopCancelled then // wird von draußen gesetzt
begin
LoopState.Stop;
Exit;
end;
.........
....
end);
Reicht Stop und Exit nicht?