Concurrency and parallelism
It is a very common misconception that concurrency is the same thing as parallelism – this is just not true! Parallelism is the simultaneous execution of multiple entities of some kind, whereas concurrency is a way of structuring your components so that they can be executed independently when possible.
It is only when you build software components concurrently that you can safely execute them in parallel, when and if your operating system and your hardware permit it. The Erlang programming language did this a long time ago – long before CPUs had multiple cores and computers had lots of RAM.
In a valid concurrent design, adding concurrent entities makes the whole system run faster because more things can be executed ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access