der serielle code ohne OTL lib funktioniert,
mein OTL code funktioniert nicht , ich sehe meinen Fehler nicht
Delphi-Quellcode:
uses .... , OtlParallel, ...... ;
type
TMeinRecord = record
x : Integer ;
y : Integer;
Name : String;
Datum : Date;
....
bmp : TBitmap
end ;
type
Tmeinerecords = array of TmeinRecord
Type TMyClass= Class
public
somerecords : Tmeinerecords;
....
procedure Berechne();
procedure Berechne1Bild();
.....
end;
procedure TMyClass.Berechne1Bild( I : Integer; abmp . TBitmap);
begin
....
end;
procedure TMyClass.Berechne()
var i : Integer;
begin
///
/// ohne OTL , dieser Code geht
///
for i := Low(somerecords) to High(somerecords) do
begin
somerecords[i].bmp := TBitmap.Create;
try
Berechne1Bild(i, somerecords[i].bmp);
finally
end;
///
/// mit OTL , dieser Code geht nicht
///
Parallel.ForEach(0, High(somerecords)).Execute(
procedure(const i: Integer)
begin
somerecords[i].bmp := TBitmap.Create;
Berechne1Bild(i, somerecords[i].bmp);
end );
end;