python多线程中的condition

python中的线程阻塞

wait和notify这两个方法,这两个方法属于threading的Condition类,condition是一个条件变量,是用来控制复杂的线程之间的同步,每次创建Condition()对象内部初始化时会上一把锁,这样保证同一对象with安全;

wait() 从表面上看很简单,就是等待,一直阻塞着等待通知执行;

notify() 从表面上看也很简单,就是通知,通知阻塞线程执行;

用途:多线程中,对全局变量实现读写保护

用法:

import threading

from threading import Condition

condition = threading.Condition()     # 创建对象,每次创建的对象不同

with condition:

      condition.wait()

with condition:

     condition.notify()

参考链接1

参考链接2

猜你喜欢

转载自blog.csdn.net/Growing_hacker/article/details/103804634