Concurrency and Parallelism
Concurrency is two lines of customers with one register.
Concurrency is the ability of different parts or units of a program, algorithm, or problem to be executed out-of-order or in partial order, without affecting the final outcome.
Parallelism is two lines of customers with two registers.
A multicore processor is an example of parallelism.
Synchronous
Asynchronous
Sync vs Async
Generally speaking, sync strains CPU (due to thread allocation) the hardest
While async strains memory the hardest
software_engineering
]