2025.10.11
1.针对CPU密集型任务(如大量数学运算),Python的全局解释器锁(GIL)会限制多线程的并行性,因为同一时刻只有一个线程能执行Python字节码,因此threading模块的多线程concurrent.futures的ThreadPoolExecutor无法利用多核CPU,反而可能因线程切换开销而降低性能。异步IO(asyncio模块)适用于I/O密集型任务,通过非阻塞I/O等待实现并发,但不适用于CPU密集型任务,因为它无法解决CPU阻塞问题。多进程(multiprocessing模块)通过创建多个独立进程,每个进程拥有自己的Python解释器和内存空间,可以绕过GIL并充分利用多核CPU实现并行计算,因此是更推荐的并发方式。