Project loom: Modern scalable concurrency for the Java platform

Day 3 /  / Track 1  /  EN

Concurrent applications, those serving multiple independent application actions simultaneously, are the bread and butter of Java server-side programming. The thread has been Java's primary unit of concurrency since Java's inception, and is a core construct around which the entire Java platform is designed, but its cost is such that it can no longer efficiently represent a domain unit of concurrency, such as the session, request or transaction. As a result, Java has seen a proliferation of libraries and frameworks that offer scalability at the cost of abandoning the thread as the unit of software concurrency and, with it, the straightforward support of Java's observability tooling, such as debuggers and profilers. Project Loom aims to reinstate the thread as an efficient unit of concurrency by adding a lightweight implementation of threads to the Java platform, which would allow straightforward code — that's easy to write, understand and maintain, and works in harmony with the platform and its tooling — to scale and meet the requirements of even most demanding concurrent applications.

Download presentation


Alan Bateman
Alan Bateman

Alan Bateman is an engineer in the Java Platform Group in Oracle. Alan has worked on many areas of the JDK including the Java Module System, the modularization of the JDK itself, and the core libraries and APIs. He previously worked on many of the tool and profiling APIs including the JSR-163 implementation and other serviceability features. He is currently focused on Project Loom with the aim to reduce the effort of writing, maintaining, and observing high-throughput concurrent applications.

Invited Experts

Anton Arhipov

Anton is a Developer Advocate at JetBrains in the Kotlin project and "Razbor poletov" podcast resident. Professional interests include programming languages, middleware, and developer tooling.