• 技术文章 >Python技术 >Python基础教程

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

    小妮浅浅小妮浅浅2021-05-17 09:46:22原创1949

    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电脑。

    专题推荐:python多进程
    品易云
    上一篇:python中GIL的原理 下一篇:python协程的作用

    相关文章推荐

    • python中collections.Counter是什么?• python collections.Counter的计数• python中使用OpenCV画线• python中用OpenCV在图像添加文本• python中geth如何使用?• python中GIL的原理

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网