Einzelnen Beitrag anzeigen

bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.138 Beiträge
 
Delphi 11 Alexandria
 
#1

List of Tbitmaps gleichzeitig bearbeiten

  Alt 21. Jul 2021, 14:12
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;
  Mit Zitat antworten Zitat