Concurrency vs Parallelism | Simply Explained

Blog / Concurrency vs Parallelism | Simply Explained
So what is the difference between a concurrency and parallelism?
TL;DR Summary
  • Concurrency is about dealing with lots of things at once but parallelism is about doing lots of things at once. ~ Rob Pike

Don't let one question ruin your next technical interview...

Concurrency Concurrency is the ability of a system to handle multiple tasks at the same time by managing the execution of these tasks. They can be executed in an interleaved manner rather than simultaneously.Example: On a single-core processor, the operating system can switch between different programs (e.g., a text editor and a web browser), giving the appearance that both are running at the same time.
Parallelism Parallelism on the other hand involves the simultaneous execution of multiple tasks, which actually run at the same time on multiple processors or cores. Parallelism requires hardware support in the form of multiple processing units.Example: On a multi-core processor, different cores can execute different tasks at the same time. Like applying a filter to a large image which is a CPU-bound task.

About TechPrep

Never walk into a technical interview unprepared again. TechPrep empowers software engineers to stop guessing and start getting offers. We provide the exact questions asked by tech companies acriss Data Structures & Algorithms, System Design, Low-Level Design & Practical coding rounds. Don't leave your career up to chance. Join thousands of engineers who have successfully navigated the tech hiring maze and landed roles at top tech companies.