Question
Explain the difference between multiprocessing and multithreading in the context of building concurrent applications.
Cover the following:
-
What a
process
is vs what a
thread
is
-
How
memory/address space
is managed in each
-
Communication
patterns (shared memory vs IPC)
-
Typical
performance trade-offs
(CPU-bound vs I/O-bound)
-
Common
failure/isolation
implications (crash containment)
-
Give 1–2 concrete examples of when you would choose each approach