国产成人AV无码一二三区,少女1到100集,国产精品久久久久精品综合紧,巜公妇之诱感肉欲HD在线播放

文章 > Python基础教程 > Python如何实现条件变量同步

Python如何实现条件变量同步

头像

爱喝马黛茶的安东尼

2019-07-06 09:07:032677浏览 · 0收藏 · 0评论

条件变量同步

有一类线程需要满足条件之后才能够继续执行,Python提供了threading.Condition 对象用于条件变量线程的支持,它除了能提供RLock()或Lock()的方法外,还提供了 wait()、notify()、notifyAll()方法。

lock_con=threading.Condition([Lock/Rlock]): 锁是可选选项,不传人锁,对象自动创建一个RLock()。

wait():条件不满足时调用,线程会释放锁并进入等待阻塞;

notify():条件创造后调用,通知等待池激活一个线程;

notifyAll():条件创造后调用,通知等待池激活所有线程。

相关推荐:《Python视频教程

import threading, time
from random import randint
class Producer(threading.Thread):
    def run(self):
        global L
        while True:
            val = randint(0, 100)
            print('生产者', self.name, ':Append'+str(val),L)
            if lock_con.acquire():
                L.append(val)
                lock_con.notify()
                lock_con.release()
            time.sleep(3)
class Consumer(threading.Thread):
    def run(self):
        global L
        while True:
            lock_con.acquire()
            if len(L) == 0:
                lock_con.wait()
            print('消费者', self.name, ":Delete" + str(L[0]), L)
            del L[0]
            lock_con.release()
            time.sleep(0.25)
if __name__ == "__main__":
    L = []
    lock_con = threading.Condition()
    threads = []
    for i in range(5):
        threads.append(Producer())
    threads.append(Consumer())
    for t in threads:
        t.start()
    for t in threads:
        t.join()
    print('---- end ----')

运行结果:

生产者 Thread-1 :Append63 []
生产者 Thread-2 :Append66 [63]
生产者 Thread-3 :Append20 [63, 66]
生产者 Thread-4 :Append83 [63, 66, 20]
生产者 Thread-5 :Append2 [63, 66, 20, 83]
生产者 Thread-4 :Append26 []
消费者 Thread-6 :Delete26 [26]
生产者 Thread-2 :Append21 []
生产者 Thread-3 :Append71 [21]
生产者 Thread-1 :Append19 [21, 71]
生产者 Thread-5 :Append100 [21, 71, 19]
生产者 Thread-1 :Append96 []
消费者 Thread-6 :Delete96 [96]
........
关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

久久精品| 《停不了的爱》床戏| 台湾版《黄花闺女》完整版| 八戒八戒电影在线看免费观看8| 姐姐片多多免费高清电视剧叶玉卿| 蜜桃视频| 《合租男女》电视剧韩国| 《酒店激战》动漫1-5集免费观.| 16岁女儿与父亲一起做饭| 双乳被十几个男人吃奶| 不戴套瑜伽教练3》| 一母四女战一婿刘琴小说免费阅读| 干爹你真棒插曲免费看| 青梅竹马是消防员第一部| 女子蹲坑排尿全过程| 女性扒开大腿内侧小肚子痒| 火车上荫蒂添的好舒服图片| 滢滢的日记1~15笔趣阁| 漂亮的售楼秘密2| 小饰品| 王叔我老公还在客厅呢什么小说| 初二学生小馒头| 美国暴躁真人CSGO| 乱公伦媳2| 来吧儿子妈妈是纯还是仿| 97在线观看免费高清电视剧大全...| MV在线观看免费播放历史| 《暴雨回不了家去上司家》| 《禁忌2》的完整演员表| 叔嫂春药山洞小说| 怎么骑桌角到失禁| 林喜宝爸爸叫李叔叔到家是哪一集 | 女人尝试到更粗大的心理变化| 叔叔别撩我24集免费观看| 母亲とが话しています读音| 妈妈醉酒后把我当爸爸电视剧| 小扫货几天没弄了这么多| HTTPS://WWW.PPT...| 《不戴套瑜伽教练3》| 豆传媒剧国产MV有什么特点| 苏畅