• 开启子进程的两种方式


    
    
    #方式一:
    from multiprocessing import Process  # 开启子进程
    import time
    
    def task(name):
        print("%s is running" % name)
        time.sleep(3)
        print("%s is done" % name)
    
    if __name__ == "__main__":
        #Process(target=task,kwargs={"name":"子进程1"}) # 字典的方式传参
        p = Process(target=task,args=("子进程1",)) # 实例化task得到对象p,元组的方式传参
        p.start() # 仅仅只是给操作系统发送了一个信号,即操作系统申请内存空间,把父进程的地址空间的数据拷贝给子进程,
                  # 作为子进程运行的初始状态,开始运行之后再去执行task函数的功能
        print("主进程")

    #方式二:
    from multiprocessing import Process  # 开启子进程
    import time
    class Myprocess(Process):
        def __init__(self,name):
            super().__init__()  # 如果有用到父类的功能需要重用一下父类的init功能
            self.name = name  # 这里再定义自己的功能
    
        def run(self):  # 固定函数名run
            print("%s is running" % self.name)
            time.sleep(3)
            print("%s is done" % self.name)
    
    if __name__ == "__main__":
        p = Myprocess("子进程1")
        p.start()  # 默认调用的是Myprocess下面的run方法
    
        print("主进程")
  • 相关阅读:
    LDD3 第7章 Time,Delays and Deferred Work
    4412 gpio读取pwm
    LDD快速参考
    4412 4路pwm输出
    PCB六层板学习(一)
    STM32 TIM3 PWM输出 4路
    4412 学习目录总结
    4412 Linux定时器
    4412 SPI驱动
    4412 i2c驱动
  • 原文地址:https://www.cnblogs.com/nanjo4373977/p/12245527.html
Copyright © 2020-2023  润新知