Java Concurrency In Practice
This practice-based course builds on concepts from Java Concurrency Foundations, with real-life tasks focused on synchronization, lock-free programming, deadlock prevention, and inter-thread communication. Each unit presents practical scenarios that challenge you to solve concurrency issues and reinforce your understanding.
Lessons and practices
Running the Dining Philosophers Simulation
Track Philosopher Meal Count
Alter Fork-Picking Strategy
Fix the Fork Ordering
Parking Lot Coordination Challenge
Running the Thread-Safe Transfers
Reverse the Locking Order
Fix the Deadlock in Transfers
Implement Reversible Bank Transfers
Thread-Safe Data Transfers
Run the Traffic Simulation Code
Expand Traffic Simulation with New Route
Fix the Traffic Control Simulation
Managing Lanes in a Busy Supermarket
Execute Producer-Consumer Synchronization
Introducing Multiple Threads in Concurrency
Fix Deadlock in Producer-Consumer Synchronization
Build Your Own Producer-Consumer Model
Running Your First Lock-Free Queue
Change Queue Capacity
Adding a Peek Method
Implement a Lock-Free Stack
Interested in this course? Learn and practice with Cosmo!
Practice is how you turn knowledge into actual skills.