• 开启子进程的方式


    开启子进程的方式

    方式一

    from multiprocessing import Process
    import time
    
    def task():
        print('进程 start')
        time.sleep(2)
        print('进程 end')
    
    if __name__ == '__main__':
        p = Process(target=task)
        p.start() # 告诉操作系统我要开子进程,告诉完了这行代码就算执行完了,接着往下走,具体操作系统什么时候开子,开多长时间跟你没关系。
        time.sleep(5)
        print('主进程/父进程')
    

    方式一多个子进程

    from multiprocessing import Process
    import time
    
    def task(x):
        print(f'子进程{x} start')
        time.sleep(2)
        print(f'子进程{x} end')
    
    if __name__ == '__main__':
        p = Process(target=task,args=('rocky',))
        p2 = Process(target=task,args=('nick',))
        p.start() # 告诉操作系统我要开子进程,告诉完了这行代码就算执行完了,接着往下走,具体操作系统什么时候开子,开多长时间跟你没关系。
        p2.start() # 告诉操作系统我要开子进程,告诉完了这行代码就算执行完了,接着往下走,具体操作系统什么时候开子,开多长时间跟你没关系。
        time.sleep(5)
        print('主进程/父进程')
    

    方式二

    from multiprocessing import Process
    import time
    class Test(Process):
        def __init__(self,name):
            super().__init__()
            self.name=name
    
        def run(self):
            print(f'子进程姓名是{self.name} start')
            time.sleep(2)
            print('子进程 end')
    if __name__ == '__main__':
        p=Test('nick')
        p.start()# 向操作系统 发送开启子进程的请求
        print('主进程')
    

    验证进程的内存空间隔离

    from multiprocessing import Process
    import time
    
    x=0
    def aaa():
        global x
        x=100
        print(f'子进程的x修改为了{x}')
    
    if __name__ == '__main__':
        p=Process(target=aaa)
        p.start()
        time.sleep(5)
        print(x)
    
  • 相关阅读:
    加载web项目时报的错误:Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modul
    js修改title
    14.Android UiAutomator 图像处理
    13.UiAutomator 辅助APK的使用
    12.UiAutomator 获取系统信息
    11.UiAutomator 相关JAVA知识
    10.Android UiAutomator Junit 断言函数的使用
    面向对象基本关键词的解释
    Java图形界面——Border
    java文本编辑器v2.0 图形用户界面
  • 原文地址:https://www.cnblogs.com/aden668/p/11506611.html
Copyright © 2020-2023  润新知