• 技术文章 >Python技术 >Python基础教程

    Python中threading.RLock的使用

    小妮浅浅小妮浅浅2021-05-28 09:22:14原创3478

    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电脑。

    专题推荐:python threadingrlock
    品易云
    上一篇:Python死锁的产生原因 下一篇:Python获取GIL锁的流程

    相关文章推荐

    • Python如何标识线程?• Python实例属性的优先级分析• Python类成员的访问限制• Python魔术方法的三个特点• Python中装饰属性的方法• Python死锁的产生原因

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网