1、和Lock的不同
(1)同一个线程可以对RLock请求多次,且RLock必须是本线程;
(2)如果用lock = threading.Lock(),则自动构成死锁,因为Lock只能被请求一次,所以第二次会一直等待下去。
2、实例
import threading lock = threading.RLock() def f(): with lock: g() h() def g(): with lock: h() do_something1() def h(): with lock: do_something2()
以上就是Python中threading.RLock的使用,希望对大家有所帮助。更多Python学习推荐:python教学
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。