• 进程间简单通信


    方法一,进程Queue

    import multiprocessing,time,os
    import threading
    
    # print("主进程的父PID:",os.getppid())  #即pytharm进程ID
    # print("主进程的PID:",os.getpid())
    
    def sub(q):
        print("sub process")
        print("子进程的父PID:", os.getppid())
        print("子进程的PID:", os.getpid())
        q.put("aaa")
    q = multiprocessing.Queue()
    if __name__ == '__main__':
        t = multiprocessing.Process(target=sub,args=(q,))
        t.start()
        print(q.get())
      t.join()等待进程返回

      

    方法二,进程pipe

    import multiprocessing,time,os
    import threading
    
    def sub(q):
        print("sub process")
        print("子进程的父PID:", os.getppid())
        print("子进程的PID:", os.getpid())
        q.send("aaa")
        q.send("bbb")
    if __name__ == '__main__':
        pare_conn,chil_conn = multiprocessing.Pipe()
        t = multiprocessing.Process(target=sub,args=(chil_conn,))
        t.start()
        print(pare_conn.recv(),pare_conn.recv())  #跟socket通信一样,如果多recv没有数据会一直卡着直到有数据发来
    

      。。。

  • 相关阅读:
    linux--menuconfig
    linux--rcs
    linux--VSS/RSS/PSS/USS
    vi编辑器中发现文件中每行都有一个^M字符
    linux umount命令
    Linux mount命令
    Linux rmmod命令
    Linux lsmod命令
    Linux insmod命令
    linux--cpio文件
  • 原文地址:https://www.cnblogs.com/alex-hrg/p/9053684.html
Copyright © 2020-2023  润新知