Concurrency
The ability of a system to run multiple tasks or processes in overlapping time periods.
Definition
Concurrency is the property of a system that allows multiple tasks or processes to make progress within overlapping time periods, though not necessarily simultaneously. In single-core systems, concurrency is achieved through time-slicing (rapid task switching). In multi-core systems, true parallelism is possible. Concurrent programming requires careful handling of shared resources to avoid race conditions, deadlocks, and livelocks. Tools include locks/mutexes, semaphores, channels, and atomic operations.
Example
“A web server handles 1,000 simultaneous HTTP requests concurrently — each request is processed in separate threads or asynchronous coroutines, making progress interleaved.”
Synonyms
- parallel processing
- multitasking
- simultaneous execution
Antonyms / Opposites
- sequential execution
- single-threaded processing
Images
CC-licensed · free to useVideo
Related Terms
- thread
- parallelism
- mutex
- deadlock
