Work Stealing
Noun · Development
Definitions
A scheduling strategy where idle threads 'steal' tasks from busy threads' queues, achieving automatic load balancing without central coordination. Each thread has its own deque -- it pushes/pops from one end, and thieves steal from the other. Used by Java's ForkJoinPool, Tokio (Rust), and Rayon (Rust). Optimal for irregular parallel workloads.
In plain English: A system where idle worker threads take tasks from busy workers' queues, keeping everyone evenly loaded.
Example: "Tokio uses work stealing across its runtime threads -- if one thread finishes its tasks, it steals from others instead of sitting idle."