Python-进程-继承Process类实现进程

from multiprocessing import Process
import time
import os


# 继承Process类
class ProcessClass(Process):
    # Process类本身也有__init__方法,如果没有初始化,就不能使用从这个类继承的一些方法和属性,
    # 最好的方法就是将继承类本身传递给Process.__init__方法,完成这些初始化操作
    def __init__(self, interval):
        Process.__init__(self)
        self.interval = interval

    def run(self):  # 重写Process类的run()方法
        print("子进程(%s) 开始执行,父进程为(%s)" % (os.getpid(), os.getppid()))
        time_start = time.time()
        time.sleep(self.interval)
        time_stop = time.time()
        print("(%s)执行结束,耗时%0.2f秒" % (os.getpid(), time_stop - time_start))


def main():
    t_start = time.time()
    print("当前程序进程(%s)" % os.getpid())
    p1 = ProcessClass(2)  # 对一个不包含target属性的Process类执行start()方法,就会运行这个类中的run()方法,所以这里会执行p1.run()
    p1.start()
    p1.join()
    t_stop = time.time()
    print("(%s)执行结束,耗时%0.2f" % (os.getpid(), t_stop - t_start))


if __name__ == "__main__":
    main()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值