zoukankan      html  css  js  c++  java
  • 多进程

    多进程模块:Process
        #from multiprocessing import Process
        #os.getpid()获取的是当前进程自己的pid
        #os.getppid()获取的是当前进程的父进程的pid
    
    实例化一个进程对象
        #p = Process(target=func,args=(1,))
               target: 是子进程要执行的任务
               args:是父进程给子进程传递的参数
        
    进程的方法:
            p.start()开启子进程,底层调用的是p.run()    
            
            
    #***************简单示例
    from multiprocessing import Process
    import time
    import os
    ############################################开启子进程的一种方式
    from multiprocessing import Process
    import time
    import os
    def func(i):
        time.sleep(1)
        print("这是儿子进程,儿子自己的pid是%s.父进程的pid是%s"%(os.getpid(),os.getppid()))
    
    if __name__=='__main__':
        #实例化一个进程对象
        p=Process(target=func,args=(1,))
        #进程开启:原理是调用底层的p.run()
        p.start()
        print("这是父进程,父进程的pid是%s,父亲的父亲进程的pid是%s"%(os.getpid(),os.getppid()))
        
        
        
        
    ################开启多个不同的子进程
    def func(i):
        time.sleep(1)
        print("这是儿子进程,儿子自己的pid是%s.父进程的pid是%s"%(os.getpid(),os.getppid()))
    if __name__=='__main__':
        #实例化一个进程对象
        for i in range(2):
            p=Process(target=func,args=(1,))
            #进程开启:原理是调用底层的p.run()
            p.start()
        print("这是父进程,父进程的pid是%s,父亲的父亲进程的pid是%s"%(os.getpid(),os.getppid()))
    
        
        
        
    ######################################### 开启子进程的另外一种方式,以继承的方式
    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__':
        p=Myprocess('lin')
        p.start() #实际上调用的是run方法
  • 相关阅读:
    Ubuntu升级后apache所有的失败,以解决虚拟文件夹的设置
    UVA315- Network(无向图割点)
    技术新领导人张小龙:一些成功不能复制
    mac在查看jre通路
    ubuntu14.04(64位置) ADB Not Responding
    【SSH三框架】Hibernate基金会七:许多附属业务
    HDU1796-How many integers can you find
    再次递归思想-路劲跨越多个阵列
    基于ORACLE建表和循环回路来创建数据库存储过程SQL语句来实现
    Android4.3 蓝牙BLE初步
  • 原文地址:https://www.cnblogs.com/god-for-speed/p/11719076.html
Copyright © 2011-2022 走看看