python线程间通信的方式,python多线程之间怎么通信

  python线程间通信的方式,python多线程之间怎么通信

  本教程运行环境:windows7系统,Python 3.9.1,DELL G3电脑。

  1、思路

  进程之间肯定需要相互通信,操作系统提供了很多机制来实现进程之间的通信。Python的多处理模块包装了底层机制,提供了队列、管道和其他交换数据的方式。

  2、实例

  以Queue为例,在父进程中创建两个子进程,一个将数据写入队列,另一个从队列中读取数据。

  fromt多重处理导入进程,队列

  进口,时间,随机

  #由写数据过程3360执行的代码

  defwrite(q):

  print( processtowrite :% s % OS . getpid())

  forvaluein[A , B , C]:

  打印( Put%stoqueue . %值)

  价值

  time.sleep(random.random())

  #读取由数据处理3360执行的代码

  defread(q):

  print( processtoread :% s % OS . getpid())

  whileTrue:

  value=q.get(True)

  print(Get%sfromqueue。%值)

  if__name__==__main__:

  #父进程创建一个队列,并将其传递给每个子进程:

  q=队列()

  pw=进程(target=write,args=(q,))

  pr=进程(target=read,args=(q,))

  # Promoter进程pw,写3360

  pw.start()

  # Promoter过程pr,读取:

  pr.start()

  #等pw结束:

  pw.join()

  #pr的过程是一个死循环,我们等不到它的结束,只能强行终止3360。

  Pr.terminate()以上是python进程间通信的方法。希望能帮到你。更多python学习方向:Python基础课程

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: