zoukankan      html  css  js  c++  java
  • python_并发编程——多进程的第二种启动方式

    1.多进程的第二种启动方式

    import os
    from multiprocessing import Process
    # 创建一个自定义类,继承Process类
    class MyProcess(Process):
        # 必须实现一个run方法,run方法中是子进程中执行的代码
        def run(self):
            print('子进程:',os.getpid())
    
    if __name__ == '__main__':
        print('主进程',os.getpid())
        p1 = MyProcess()
        p1.start()
        p2 = MyProcess()
        p2.start()

    结果:

     2.进程号和进程名

    import os
    from multiprocessing import Process
    
    class MyProcess(Process):
        def run(self):
            print('子进程:',os.getpid())
            print(self.name)    #打印进程名
            print(self.pid)     #打印进程号,这里的进程号和os.getpid的进程号是一样的
    
    if __name__ == '__main__':
        print('主进程',os.getpid())
        p1 = MyProcess()
        p1.start()
        p2 = MyProcess()
        p2.start()

    结果:

     3.传递参数

    from multiprocessing import Process
    
    class MyProcess(Process):
        def __init__(self,arg1,arg2):   #使用构造方法接收传递进来的参数
            super().__init__()    #调用父类的__init__方法
            self.arg1 = arg1    #把传进的的参数绑给self
            self.arg2 = arg2
    
        def run(self):
            print(self.name)    #打印进程名
            print(self.pid)     #打印进程号,这里的进程号和os.getpid的进程号是一样的
            print(self.arg1)
            print(self.arg2)
    
    if __name__ == '__main__':
        p1 = MyProcess('wdc',1)   #传递两个参数
        p1.start()
        p2 = MyProcess('yhf',2)   #传递两个参数
        p2.start()

    结果:

  • 相关阅读:
    关系型数据库范式 沧海
    面试注意事项 沧海
    怎样在面试后得到想要的职位 沧海
    应届大学毕业生面试应答 沧海
    二叉树的遍历及实现 沧海
    比较好的C++面试题 沧海
    多态 沧海
    应届大学毕业生面试应答 沧海
    SQL Server开发人员应聘常被问的问题 沧海
    面试成功的技巧与忠告 沧海
  • 原文地址:https://www.cnblogs.com/wangdianchao/p/12040638.html
Copyright © 2011-2022 走看看