码迷,mamicode.com
首页 > 系统相关 > 详细

进程间通信

时间:2018-05-17 23:22:25      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:返回   end   进程id   print   tpi   RoCE   div   join()   方法   

方法一,进程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没有数据会一直卡着直到有数据发来

  。。。

进程间通信

标签:返回   end   进程id   print   tpi   RoCE   div   join()   方法   

原文地址:https://www.cnblogs.com/alex-hrg/p/9053684.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!