python多进程取代多线程的探究

886次阅读
没有评论

python多进程取代多线程的探究

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多进程取代多线程的探究,希望能对大家有所帮助。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-05-02发表,共计544字。
新手QQ群:570568346,欢迎进群讨论 Python51学习