python中如何创建子类进程_Python多任务之进程的创建-Process子类

创建新的进程还能够使用类的方式,可以自定义一个类,继承Process类,每次实例化这个类的时候,就等同于实例化一个进程对象

from multiprocessing import Process

import time

import os

#继承Process类

class Process_Class(Process):

#因为Process类本身也有__init__方法,这个子类相当于重写了这个方法,

#但这样就会带来一个问题,我们并没有完全的初始化一个Process类,所以就不能使用从这个类继承的一些方法和属性,

#最好的方法就是将继承类本身传递给Process.__init__方法,完成这些初始化操作

def __init__(self,interval):

Process.__init__(self)

self.interval = interval

#重写了Process类的run()方法

def run(self):

print("子进程(%s) 开始执行,父进程为(%s)"%(os.getpid(),os.getppid()))

t_start = time.time()

time.sleep(self.interval)

t_stop = time.time()

print("(%s)执行结束,耗时%0.2f秒"%(os.getpid(),t_stop-t_start))

if __name__=="__main__":

t_start = time.time()

print("当前程序进程(%s)"%os.getpid())

p1 = Process_Class(3)

#对一个不包含target属性的Process类执行start()方法,就会运行这个类中的run()方法,所以这里会执行p1.run()

p1.start()

p1.join()

t_stop = time.time()

print("(%s)执行结束,耗时%0.2f"%(os.getpid(),t_stop-t_start))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值