🚀 Virtual Threads in Java

Virtual Threads Mastery: From Core Concepts to Real-World Implementation


/images/avatar.jpg#right
Transform your team's concurrent programming expertise with a hands-on virtual threads workshop led by David Vlijmincx - Oracle ACE, published author, and international conference speaker with 8+ years of enterprise Java development experience.





Why Choose this workshop?

Battle-Tested Enterprise Expertise: Benefit from 8+ years of enterprise Java development experience, distilled into practical, immediately applicable knowledge

Industry-Recognized Authority: Learn from an Oracle ACE who has authored two technical books and influenced 240,000+ developers annually through his technical blog

Tailored to Your Success: Each workshop is customized to your team's codebase and challenges, ensuring immediate ROI

Future-Proof Investment: Lifetime access to updated materials keeps your team ahead of Java's evolution


Curriculum

This one-day intensive workshop covers both the theoretical foundations and practical applications of Virtual Threads in Java. Participants will gain hands-on experience with Project Loom's features while learning best practices for concurrent programming and migration strategies for existing applications.

Morning

Fundamentals of Virtual Threads

  • What are virtual threads
  • Project Loom overview
  • Evolution from Platform Threads to Virtual Threads
  • Core concepts and architecture
  • Hands-on: Creating your first Virtual Thread
  • Key differences from Platform Threads
  • Performance characteristics and memory footprint
  • Hands-on: starting with virtual threads

How virtual threads fit in Java

  • Common use cases and patterns
  • Executor services
  • HTTP client/server scenarios
  • Database operations
  • File I/O operations
  • Thread pinning and how to avoid it
  • Hands-on: Building a concurrent web scraper

Afternoon

Structured concurrency

  • What is Structured Concurrency
  • Structured Concurrency with practical examples
  • Creating a hierarchy of thread lifetimes
  • shutdown policies
  • Creating your own policies
  • Hands-on: Find the object that matches the policy

Scoped values

  • What are scoped values
  • ThreadLocal shortcomings
  • Rebinding scoped
  • Scoped values with structured concurrency
  • Hands-on: Migrating a legacy application

Micro benchmarking

  • Profiling applications
  • Running micro benchmarks with JMH




Workshop Feedback

From Conference Workshops:Feedback collected from sold-out conference workshops at major Java events