Python
并发编程完全指南
Python 提供三种主要并发模型:基于线程的 threading、基于进程的 multiprocessing 和基于协程的 asyncio。此外,concurrent.futures 提供了统一的高层接口。选择哪种模型取决于任务类型。 CPython 的 GIL 确保同一时刻只有一个线程执行 Python 字节码。因此,对于纯 Python 的 CPU 密集型代码,多线程不能带来并行加速。但对于 IO 密集型任务,线程在等待 IO 时会释放 GIL,其他线程可以运行。 C 扩展(如 NumPy 的计算部分)在执行期间可以主动释放 GIL,实现真正的并行