zoukankan      html  css  js  c++  java
  • Process的一些用法和守护进程

    Process的一些用法

    Process的join用法

    join():阻塞主进程,等待子进程结束以后,再往下执行

    from multiprocessing import Process
    import time
    
    def task():
        print('进程 start')
        time.sleep(2)
        print('进程 end')
    
    if __name__ == '__main__':
        p = Process(target=task)
        p.start()
        p.join()
        print('主进程')
    

    在当前进程的角度查看pid

    • 获取当前进程的pid:os.getpid()
    • 获取当前进程的父进程的pid:os.getppid()
    • 获取当前进程的子进程的pid:子进程对象.pid

    守护进程

    守护进程本质上也是一个子进程。

    主进程的代码执行完毕守护进程直接结束,但是主进程可能还没有结束。

    from multiprocessing import Process
    import time
    
    def task():
        print('守护进程 start')
        time.sleep(5)
        print('守护进程 end')
        
    if __name__ == '__main__':
        p = Process(target=task)
        p.daemon = True   # 把这个子进程定义为守护进程
        p.start()
        time.sleep(2)
        print('主进程')
    
  • 相关阅读:
    checkIP.sh
    checkAPP
    &&和&区别,||和|区别?
    手动测试oracle数据库连接
    存储过程的优缺点?
    什么是存储过程?用什么来调用?
    序列的作用
    内连接和外连接
    左连接和右连接
    java中常用的类、包、借接口
  • 原文地址:https://www.cnblogs.com/yunluo/p/11568305.html
Copyright © 2011-2022 走看看