Tech_Interview_Prep

Concurrency (GIL, Threading, Asyncio)

Why Python threads don't parallelize CPU work, and the two real ways around it: multiprocessing and asyncio.

Q1.What does the Global Interpreter Lock (GIL) prevent in CPython?

Q2.For a CPU-bound task in Python, which approach actually achieves parallelism across cores?

Q3.Why does Python's `threading` module still help for I/O-bound tasks despite the GIL?

Q4.What is required for `asyncio` concurrency to actually overlap work?