zoukankan      html  css  js  c++  java
  • 线程的条件Condiition

    条件Condition相当于给锁造钥匙,但是这钥匙是一次性的。一个线程拿到钥匙进去,出来之后钥匙没有归还,而是没了。

    如下代码:

    from threading import Thread, Condition
    
    
    def func(conn, i):
        conn.acquire()
        conn.wait()
        print('在第%s循环中'%i)
        conn.release()
    
    
    conn = Condition()
    for i in range(10):
        Thread(target=func, args=(conn, i)).start()
    while 1:
        num = int(input('>>>'))
        conn.acquire()
        conn.notify(num)
        conn.release()

    条件在创建之初,状态是False。

    里面有四个命令:

    wait()  当状态是False的时候,程序阻塞。等钥匙。

    notify(num)  造钥匙,num一定要是int类型的。

    acquire()  和 release()  是锁。

  • 相关阅读:
    table布局与div布局
    HTML一般标签
    jquery
    PDO对象
    分页例题
    投票练习
    封装 链接数据库类
    访问数据方法
    面相对象多态
    面向对象
  • 原文地址:https://www.cnblogs.com/aaronthon/p/9861107.html
Copyright © 2011-2022 走看看