Rückblick: Structured Concurrency und Scoped Values mit Hanno Embregts

LVM Versicherung (Gebäudeteil 5), Kolde-Ring 21, Münster

Am 13. Oktober waren wir wieder zu Gast bei der LVM Versicherung in Münster: Hanno Embregts (Java Champion, Oracle ACE Pro und Vorstandsmitglied der NLJUG) nahm uns mit auf die nächste Etappe von „Java's Concurrency Journey“ – Structured Concurrency und Scoped Values.

Hanno Embregts vor der Titelfolie seines Vortrags
Hanno Embregts eröffnet den Abend im Gebäudeteil 5 der LVM.

Der Weg von klassischen Threads über Runnables, ExecutorServices, CompletableFutures und ForkJoinPools bis zu Virtual Threads ist lang. Mit Virtual Threads wird es billig, sehr viele nebenläufige Aufgaben zu starten – aber Koordination, Beobachtbarkeit und Isolation werden dadurch nicht einfacher. Genau hier setzen die beiden neuen Konzepte an.

Ein Restaurant als Beispiel

Statt abstrakter Beispiele modellierte Hanno ein Restaurant: Die Kellner Grover, Zoe und Rosita kündigen die Gänge eines Menüs an – Vorspeise, Hauptgang und Dessert. Zuerst wurde das Ganze mit klassischen Threads umgesetzt, dann mit einem ExecutorService, und schließlich zeigte er, wie Structured Concurrency Lebensdauer und Fehlerbehandlung der parallelen Aufgaben klarer an den Code bindet.

Hanno Embregts vor einer Folie mit einer Bar
Auch die Bar durfte nicht fehlen.
Folie „Modeling a Restaurant with ExecutorService“
Dasselbe Menü mit einem ExecutorService: drei Futures, drei Kellner.

Rund 28 Teilnehmer folgten dem Vortrag vor Ort.

Materialien

Danke an Hanno für den unterhaltsamen Vortrag und an die LVM für die Gastfreundschaft! Der nächste Termin steht schon fest: am 18. November geht es um Post-Quanten-Kryptographie und Java.