La Concurrence Structurée en Java 26
Le projet Loom a déjà livré les threads virtuels et les scoped values. Il reste encore un élément en preview : l'API de Concurrence Structurée, qui permet de lancer des tâches en parallèle tout en conservant les paradigmes de la programmation structurée. Pour le moment, cette tâche est remplie par le pattern Executor, ou par la programmation réactive. L'API de Concurrence Structurée nous apporte de nouveaux patterns de code, qui utilisent les threads virtuels.
Le code que l'on écrit est plus lisible, plus facile à comprendre. Les éventuelles exceptions générées donnent des piles d'appel qui emmènent là où le code à échouer, ce qui permet de débugger ces applications efficacement.
Cette présentation vous montre ces patterns, construits sur l'utilisation de nouveaux objets : les StructuredTaskScope, qui utilisent des Joiners afin de préciser les stratégies de fonctionnement du système et d'analyse des résultats produits.
José is a member of the Java Developer Advocacy team at Oracle. He holds a PhD in applied mathematics and computer science and was an assistant professor at the University Sorbonne Paris Nord. José is an active member of the Paris Java User Group, has been a co-organizer of the Devoxx France conference, and is currently a disorganizer of the JChateau unconference. He contributes Java learning content on the dev.java website and publishes the "JEP Café", a monthly video cast on the official Java YouTube channel.