1、说明
可以使用多核CPU的多进程。
利用多进程,我们并行地运行一些python解释器,每个进程都有自己的私有空间,有自己的GIL,而且每个进程都是串行的,因此GIL之间不存在竞争。
所以GIL没有任何问题。Python提供了一个multiprocessing模块,使我们可以很容易地创建流程。
2、实例
import time from multiprocessing import Pool COUNT = 10000000 start = time.clock() def countdown(n): while n > 0: n -= 1 pool = Pool(processes=2) start = time.clock() r1 = pool.apply_async(countdown, [COUNT//2]) r2 = pool.apply_async(countdown, [COUNT//2]) pool.close() pool.join() print('Time used:', time.clock() - start) # ('Time used:', 0.0017779999999998353)
以上就是python多进程取代多线程的探究,希望能对大家有所帮助。更多Python学习指路:python基础教程
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。