Workshop Details

Delphi Code Camp
Das Trainingsevent für Delphi-Entwickler
6. - 8. Mai 2019, Köln

Bernd Ua

de

07 Mai 2019
09:00 - 17:00
Early Bird Bis zum 4. April anmelden und bis zu 100 € sparen! Jetzt anmelden

Multithreading und Parallel Programming mit Delphi

07 Mai 2019
09:00 - 17:00

Tuesday, 7. May 2019 | 09:00 - 17:00

Aktuelle Rechner bieten Hyperthreading und Multicore-CPUs oder gleich mehrere Prozessoren. Programme mit mehreren Threads können diese Hardware besser ausnutzen. Daneben erwarten User ebenso wie die Richtlinien aktueller Betriebssysteme ein „Responsive UI“, unabhängig davon, was die Anwendung tut. Lange Datenbankabfragen oder die Nutzung von Cloud-Diensten im Hintergrund dürfen eine Anwendung nicht mehr blockieren. Mit Threads und dem zusätzlichen Parallel-Programming-Library-(PPL-)Framework bietet Delphi einiges an Bordmitteln, um das zu realisieren.

Allerdings erhöhen Threads und Tasks auch die Komplexität von Programmen und bieten bei falscher Verwendung genügend Fallstricke, die für Deadlocks oder Abstürze sorgen können.

Der Workshop gibt eine Einführung in die Verwendung der Thread-Klassen von Delphi und das Design von Threads. Sie lernen die verschiedenen Synchronisationselemente wie Critical Sections, Mutexes, Events und Semaphoren ebenso kennen wie Delphis Hilfsklassen von TMonitor bis TThreadedQueue<T>.  Sie lernen die Tasks, Futures und den Threadpool der PPL kennen. Wir stellen Tasks und Threads gegenüber und schauen uns an, wie beide effektiv verwendet werden, um ein reaktives UI mit Threads und/oder Tasks realisieren zu können. Ein Blick auf das das Exception Handling bei Threads und Tasks und asynchronen Aufrufe in TComponent runden die Themen ab.

Agenda

  • Einführung in Multithreading
  • Thread-Klasse in Delphi
  • Synchronisationsobjekte und Hilfsklassen
  • Delphi Parallel Programming Library (PPL)
  • Tasks und Futures versus Threads
  • Responsive UI realisieren
  • Exception Handling bei Threads und Tasks 
  • Asynchrone Calls in Komponenten

Teilnahmevoraussetzungen

  • Sicherer Umgang mit Delphi
  • Kenntnisse objektorientierter Entwicklung

Zusätzliche Hinweise

Zum direkten Nachvollziehen der Beispiele und für Übungen wird ein Laptop mit einer Delphi-Version zwischen mindestens Delphi XE7 und der aktuellen Delphi-Version empfohlen. Für einige Beispiele ist eine höhere Delphi-Version erforderlich (APL ab Delphi XE8). Als Betriebssystem kann Windows 7/8 oder 10 verwendet werden.

Session Themen

#Delphi