码迷,mamicode.com
首页 > 编程语言 > 详细

Python基础之多线程事件Event

时间:2017-11-08 12:02:17      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:tar   返回   name   时间   elf   eve   print   end   thread   

import threading,time
class Boss(threading.Thread):
    def run(self):
        print("BOSS:伙计们今晚上加班到22:00")
        event.set()
        time.sleep(5)  #模拟一个小时这段时间
        print("BOSS:22:00了可以下班了")
        event.set()
class Worker(threading.Thread):
    def run(self):
        event.wait() #等待event为真 此列是等待老板发话
        print("woker:命苦啊")
        time.sleep(1) #模拟工作中
        event.clear() #清除Event对象内部的信号标志,即将其设为假,此处等待领导发话 
        event.wait()   #Event对象wait的方法只有在内部信号为真的时候才会很快的执行并完成返回。
        print("Woker:OhYeah")
if __name__=="__main__":
    event=threading.Event()
    threads=[]
    for i in range(5):
        threads.append(Worker())
    threads.append(Boss())
    for t in threads:
        t.start()
    for t in threads:
        t.join()

  

Python基础之多线程事件Event

标签:tar   返回   name   时间   elf   eve   print   end   thread   

原文地址:http://www.cnblogs.com/c-x-a/p/7802855.html

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