World Congress 2026 Europe - Virtual Stage • Jul 2, 2026 • Session details

Beyond Loom: Practical Patterns for Virtual Threads, Structured Concurrency and Reactive Interop

Ivan Šarić

Project Loom doesn't kill reactive programming. Discover how to combine Java virtual threads with reactive boundaries to build highly scalable, readable applications without carrier thread pinning.

Pause
Mute Enter Fullscreen
#1 about 2 min

Introduction to Loom and its impact on concurrency

An overview of how virtual threads, structured concurrency, and reactive interoperability reshape Java services.

#2 about 2 min

Shift away from traditional threads and the asynchronous era

How the high cost of platform threads pushed early Java architectures toward complex asynchronous frameworks.

#3 about 2 min

Origins of Project Loom and lightweight threading semantics

Reconsidering concurrency design creates cheaper blocking execution paths that avoid exhausting expensive operating system thread resources.

#4 about 4 min

Java Development Kit version history and production readiness

Real-world adoption relies on JDK 21 maturity alongside compatible framework and observability tooling.

#5 about 3 min

Adopting thread-per-task logic and carrier thread pinning limits

Lowering the cost of blocking execution restores imperative programming models but requires addressing carrier thread pinning restrictions.

#6 about 3 min

Contextual history of reactive programming in Java ecosystems

Shifting from natural blocking architectures to non-blocking workflows historically improved scalability at the cost of cognitive overhead.

#7 about 3 min

Utilizing backpressure and reactive streams for flow control

Reactive paradigms enforce backpressure inside continuous asynchronous pipelines to ensure fast producers do not overwhelm downstream consumers.

#8 about 2 min

Architectural pivots from avoiding blocking to managed waiting

Evolving guidance allows safe thread blocking for input-output bound requests instead of universally adopting callback architectures.

#9 about 3 min

Organizing parallel work dynamically using structured concurrency

Grouping child microservice tasks within parent request scopes provides clearer lifecycle ownership and safer cancellation behavior.

#10 about 3 min

Benchmarking virtual threads and measuring total system limits

Accurate production readiness requires analyzing system bottlenecks like database connection limits instead of isolating arbitrary thread throughput.

#11 about 3 min

Designing hybrid systems with reactive and imperative scopes

Combining reactive external gateways with imperative internal code preserves powerful flow control without sacrificing readability.

#12 about 3 min

Managing thread local state and context propagation migrations

Auditing custom state dependencies prevents context leakage and guarantees clean transitions across hybrid operational boundaries.

#13 about 3 min

Strategy and checklists for incremental virtual thread rollout

Safely adopting lightweight threading demands incremental endpoint rollouts verified by realistic load testing and continuous observability monitoring.

Matching moments

46 sec

Contrasting Project Loom virtual threads with reactive semantics

Josh Long · World Congress 2022

1:56 min

Overview of Project Loom and virtual threads

Christian Woerz · LIVE

2:05 min

Goals and concepts behind Java Project Loom

Jan Weinschenker Jan Weinschenker · World Congress 2024

1:36 min

Introduction to Project Loom and reactive programming

Jan Weinschenker Jan Weinschenker · World Congress 2024

1:31 min

Evaluating the future of reactive programming in Java

Jan Weinschenker Jan Weinschenker · World Congress 2024

1:47 min

Evaluating Project Loom and legacy non-reactive system integrations

Jan Weinschenker Jan Weinschenker · World Congress 2023

Upcoming sessions on this topic

Open session

From Profiler to Production: Measuring What Actually Matters in React & React Native

  • Andrei Tazetdinov

    Dynatrace

    React Native Developer

Open session

How We Cut Our API's p99 Latency from Minutes to Under a Second

  • Deepak Agrawal

    Atlassian

    Principal Software Engineer

Open session

Java is Coming for Python’s Lunch: The Rise of JVM AI Agents

  • Frederik Pietzko

    Jetbrains

    Developer Advocate

Open session

Multi-Cloud Isn't a Project. It's a Side Effect.

  • Antonio Mendoza Pérez

    Temporal Technologies

    Staff Developer Success Engineer

  • Gaurav Thadani

    Temporal

    Staff Developer Success Engineer

Open session

React Under Fire: Rendering Performance for Streaming Agent UIs

  • Abhirupa Mitra

    Slack

    Senior Member of Technical Staff

Open session

Designing for Every Direction: Logical CSS for Global, Adaptive, and Effortlessly Reversible UIs

  • Vidhya Krishnamoorthy

    Morgan Stanley

    VP, Software Engineering Manager