zoukankan      html  css  js  c++  java
  • 线程_使用multiprocessing启动一个子进程及创建Process 的子类

    from multiprocessing import Process
    import os
    # 子进程执行的函数
    def run_proc(name):
        print("子进程运行中,名称:%s,pid:%d..."%(name,os.getpid()))
    if __name__ == "__main__":
        print("父进程为:%d..."%(os.getpid()))
        # os.getpid()获取到进程名
        pro = Process(target=run_proc,args=('test',))
        # target=函数名  args=(参数,)
        print("子进程将要执行")
        pro.start()#进程开始
        pro.join()#添加进程
        print("子进程执行结束...")

    from multiprocessing import Process
    import time
    import os
    # 继承Process类
    class Process_Class(Process):
        def __init__(self,interval):
            Process.__init__(self)
            self.interval = interval
    #     重写Process类的run方法
        def run(self):
            print("我是类中的run方法")
            print("子进程(%s),开始执行,父进程为(%s)"%(os.getpid(),os.getppid()))
            start_time = time.time()
            time.sleep(2)
            end_time = time.time()
            print("%s执行时间为:%.2f秒" % (os.getpid(),end_time-start_time))
    if __name__ == '__main__':
        start_time = time.time()
        print("当前进程为:(%s)"%(os.getpid()))
        pro1 = Process_Class(2)
        # 对一个不包含target属性的Process类执行start()方法,
        # 会运行这个类中的run()方法,所以这里会执行p1.run()
        pro1.start()
        pro1.join()
        end_time = time.time()
        print("(%s)执行结束,耗时%0.2f" %(os.getpid(),end_time - start_time))

     


    2020-05-07

  • 相关阅读:
    文件上传利器JQuery上传插件Uploadify
    记自己的第一个完整的java web项目
    win7下oracle的安装
    Linux下redis的安装
    微信公众号开发地理位置坐标的转换
    Apache Log4j配置说明
    eclipse安装svn插件
    网站引入外部js
    蛇形填数
    第一节:Scrapy开源框架初探
  • 原文地址:https://www.cnblogs.com/hany-postq473111315/p/12845615.html
Copyright © 2011-2022 走看看