多线程condition,python多线程

  多线程condition,python多线程

  原理分析

  1.Python条件变量Condition需要和互斥体关联,条件本身提供了wait、notify和notifyAll方法。

  2.它用于阻塞和通知其他并行线程它们可以访问共享资源。

  条件提供了多线程通信机制。如果线程1需要数据,线程1会阻塞等待,然后线程2会制造数据。线程2做出数据后,通知线程1可以获取数据,然后线程1就会获取数据。

  实例

  #!usr/bin/envpython

  #-*-编码:utf-8_*-

  #导入线程模块

  导入线程

  #创建条件变量condition

  con=线程。条件()

  defthread_one(姓名):

  #条件变量条件线程被锁定

  con.acquire()

  打印({}:是成语接龙准备好了)。格式(名称))

  #等待正在等待的线程(等待)

  con.notify()

  #等待对方的响应消息,用wait阻塞线程,等待对方通过notify唤醒这个线程。

  等待()

  打印({}:全部清除)。格式(名称))

  #唤醒彼此

  con.notify()

  #等待消息说是

  等待()

  Print ({0} :我知道一天能看到Tik Tok的美女,我给你说个简单的。来了:手脚并用。格式(名称))

  #唤醒彼此

  con.notify()

  #等待消息说是

  等待()

  打印( {}:哟哟,不错嘛!.格式(名称))

  #唤醒彼此

  con.notify()

  #条件变量条件线程释放锁

  con.release()

  defthread_two(姓名):

  #条件变量条件线程被锁定

  con.acquire()

  #wait阻塞状态,等待其他线程通过notify唤醒本线程。

  con.wait()

  打印( {}:准备好了~走吧!.格式(名称))

  #唤醒彼此

  con.notify()

  #等待消息说是

  等待()

  打印( {}:洁身自好妹子,无法回答.让我们来个简单的.格式(名称))

  #唤醒彼此

  con.notify()

  #等待消息说是

  con.wait()

  打印( {}:嘿,我知道这个:脚踏实地。格式(名称))

  #唤醒彼此

  con.notify()

  con.release()

  if__name__==__main__:

  #创建并初始化一个线程

  t1=线程。Thread(target=thread_one,args=(A ))

  t2=线程。Thread(target=thread_two,args=(B ))

  #启动线程——注意线程启动顺序,这很重要。

  t2.start()

  t1.start()

  #阻塞主线程并等待子线程结束

  t1.join()

  t2.join()

  打印(“程序结束!”)

  输出结果:

  A:成语接龙准备好了吗?

  B:准备好了~走吧!

  :是干净的。

  B:操你妹,我答不上来.来个简单的。

  A:知道如何在一天内看Tik Tok美女。让我给你一个简单的。给你:所有的手和脚。

  嘿,我知道这个:脚踏实地

  A:哟哟,好,好!

  程序结束!

  以上是python线程中的条件原理。希望对你有帮助。更多python学习方向:Python基础课程

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

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

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