Live Engine
Select Topic
easyMultithreading And Multiprocessing
A developer writes a Python script to resize 10,000 images. They try three approaches: (A) sequential loop, (B)
threading.Thread with 8 threads, (C) multiprocessing.Process with 8 processes. Approach B is barely faster than A, but Approach C is 7× faster. Their colleague says: "Of course — image resizing is CPU-bound." Why does threading fail to speed up CPU-bound work in CPython, and what property of the GIL causes this?