Beiträge durchsuchen

Parallelisierung mit Delphis Parallel Library

Einführung

Will man alle CPU-Kerne für die Rechenarbeit seiner Anwendung einsetzen, muss man mehrere Threads starten. Das nennt sich Nebenläufigkeit. Bislang hat Delphi dem Entwickler lediglich die Klasse TThread zur Verfügung gestellt, so dass man nicht direkt auf die Win32-API zugreifen musste. Ein Tutorial dazu gibt ist auf Delphi-Treff zu finden.

Mit Delphi XE7 hat sich die Sache deutlich verbessert. Nun gibt es die sog. Parallel Library, die zur RTL gehört, also sowohl in der VCL als auch in FireMonkey zur Verfügung steht, und sich unterhalt von System.Threading befindet.

In diesem Tutorial wollen wir uns ansehen, was die Parallel Library uns bietet.

1 Kommentar zu Parallelisierung mit Delphis Parallel Library

  1. In der Routine

      ...
      TParallel.For(1, 100000, procedure(I: Integer)
      Begin
        If IsPrime(i) Then
          inc(Total);
      End);
      ...

    würde ich statt inc(Total) die Anweisung TInterlocked.Increment(Total) verwenden, sonst stimmt die Anzahl der ermittelten Primzahlen nicht.

Kommentare sind geschlossen.