What the GIL Actually Is
The Global Interpreter Lock is a mutex that prevents multiple Python threads from executing bytecode simultaneously. It makes the CPython runtime and most C extensions thread-safe by default but means pure Python threads cannot use multiple CPU cores in parallel.