Project loom: Modern scalable concurrency for the Java platform
summary
Project Loom adds cheap virtual threads to the JVM by implementing continuations in HotSpot and multiplexing them on a small pool of carrier OS threads via a ForkJoin-based scheduler. Virtual threads use about 256 bytes per virtual thread plus small stacks and achieve context switches in hundreds of nanoseconds, allowing demos that create one million virtual threads and run. Compatibility keeps java.lang.Thread and ThreadLocals but current limits include pinned carriers for native frames or when parking while holding a monitor; tooling (debugger, JFR) and an early-access JDK build are available.
AI-written summary · about
chapters (12)
- 0:00Introduction and context
- 2:00Project Loom overview
- 3:48The state of Java threads
- 6:45Synchronous vs asynchronous
- 13:31API design considerations
- 18:22Implementation details
- 22:35Live coding demonstrations
- 39:27Advanced server demo
- 47:25Q&A and limitations
- 51:49Preparing code for Loom
- 54:15Tooling and future outlook
- 1:07:19Closing remarks
related talks
39mProject Loom: Modern Scalable Concurrency for the Java Platform
50mProject Loom: Helping Write Concurrent Applications on the Java Platform
47mThe Challenges of Introducing Virtual Threads to the Java Platform - Project Loom
51mWhat's Looming in Java The Why and What of Project Loom
44mLoom: Revolution or Implementation Detail?
01h 01mProject Loom: Revolution in Concurrency or Obscure Implementation Detail?
32mProject Loom? Better Futures? What’s next for JVM concurrent programming
01h 00mLoom Virtual Threads in the JDK 20
