• 技术文章 >常见问题 >Python常见问题

    python如何写多进程

    silencementsilencement2020-02-05 17:57:52原创2565

    Python中的多进程是通过multiprocessing包来实现的,和多线程的threading.Thread差不多,它可以利用multiprocessing.Process对

    象来创建一个进程对象。这个进程对象的方法和线程对象的方法差不多也有start(), run(), join()等方法,其中有一个方法不同Thread线程

    对象中的守护线程方法是setDeamon,而Process进程对象的守护进程是通过设置daemon属性来完成的。

    下面说说Python多进程的实现方法,和多线程类似

    2.Python多进程实现方法一

    1

    2

    3

    4

    5

    6

    7

    8

    from multiprocessing import  Process

     

    def fun1(name):    print('测试%s多进程' %name)if __name__ == '__main__':

        process_list = []    for i in range(5):  #开启5个子进程执行fun1函数

            p = Process(target=fun1,args=('Python',)) #实例化进程对象

            p.start()

            process_list.append(p)    for i in process_list:

            p.join()    print('结束测试')

    3.Python多进程实现方法二

    还记得python多线程的第二种实现方法吗?是通过类继承的方法来实现的,python多进程的第二种实现方式也是一样的

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    from multiprocessing import  Process

     

    class MyProcess(Process): #继承Process类

        def __init__(self,name):

            super(MyProcess,self).__init__()

            self.name = name

     

        def run(self):        print('测试%s多进程' % self.name)if __name__ == '__main__':

        process_list = []    for i in range(5):  #开启5个子进程执行fun1函数

            p = MyProcess('Python') #实例化进程对象

            p.start()

            process_list.append(p)    for i in process_list:

            p.join()    print('结束测试')

    推荐学习《Python教程》!

    专题推荐:进程
    上一篇:python安装好了怎么使用 下一篇:python中10061错误是什么

    相关文章推荐

    • python中线程和进程的区别• python 如何终止进程

    全部评论我要评论

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

  • 取消发布评论
  • 

    Python学习网