Concurrency API für Java EE 7 steht zur Einsicht bereit

Hartmut Schlosser

In Java EE 7 soll ein neues Concurrency API spezifiziert werden. Der bereits seit 2003 aktive JSR 236 (Concurrency Utilities for Java EE) ist endlich auf dem Weg der Vollendung: Erste Ergebnisse für die Version 1.0 des APIs können nun in einem Early-Draft-Papier eingesehen werden.

Hintergrund der Spezifikation ist, dass die Java-Plattform bzw. Java EE Server Container keine Empfehlungen für die direkte Nutzung gängiger APIs zur Behandlung nebenläufiger Prozesse wie java.lang.Thread oder
java.util.Timer ausgeben. Die Server Container stellen Runtime-Support für Java-EE-Anwendungskomponenten wie Servlets und Enterprise JavaBeans (EJB) bereit und bieten eine Schicht zwischen Anwendungskomponente und Platfform-Services bzw. -Ressourcen.

Programmcode der Anwendungskomponenten wird in einem Thread ausgeführt, der von einem Container verwaltet wird. Dabei erwartet jeder Container typischerweise, dass auf Container-gespeiste Objekte über den selben Thread zugegriffen wird. Durch dieses Verhalten sind Anwendungskomponenten üblicherweise nicht in der Lage, verlässlich auf Java-EE-Plattform-Dienste zuzugreifen, die von einem Thread stammen, der von einem anderen Container verwaltet wird.

Der JSR 236 soll deshalb ein einheitliches API bereit stellen, das nebenläufige Prozesse ermöglicht, ohne die Integrität der Container zu kompromittieren. Das API soll maßgeblich eine Erweiterung des Concurrency Utilities APIs darstellen, das bereits in der Java-2-Plattform und in Java SE 5 in der Form des java.util.concurrent Packages enthalten war. Nutzer dieses APIs sollen existierende Anwendungen mit lediglich kleinen Anpassungen weiterverwenden können.

Beteiligt an den jetzt verfügbaren Specs waren Adam Bien, Marius Bogoevici (RedHat), Cyril Bouteille, Andrew Evers, Jarek Gawor (Apache Foundation), Anthony Lai (Oracle), Doug Lea,
David Lloyd (RedHat), Naresh Revanuru (Oracle), Fred Rowe (IBM) und Marina Vatkina (Oracle). Die Expertengruppe um Spec-Lead Anthony Lai (Oracle) ruft nun die Community auf, sich die Spezifikationen anzusehen und Feedback abzugeben. Die Early Draft Review endet am 15. Dezember.

Wie es also aussieht, werden wir 2013 mit Java EE 7 endlich eine standardisierte Concurrency-Lösung haben. Was lange währt wird endlich gut.

Geschrieben von
Hartmut Schlosser
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.