李狗要多读书
2018-11-06 08:02
采纳率: 100%
浏览 2.0k

请问python线程的rlock的实际用途有哪些,一个线程已经获得了锁,为什么要重复再加锁。

请问python线程的rlock的实际用途有哪些,一个线程已经获得了锁,为什么要重复再加锁。

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • oyljerry 2018-11-06 08:23
    已采纳

    其实主要就是对于你的线程处理中会有一些比较复杂的代码逻辑过程,比如很多层的函数调用,而这些函数其实都需要进行加锁保护数据访问。
    这样就可能会反复的多次加锁,因而用rlock就可以进行多次加锁,解锁,直到最终锁被释放
    而如果用普通的lock,当你一个函数A已经加锁,它内部调用另一个函数B,如果B内部也会对同一个锁加锁,那么这种情况就也会导致死锁。而rlock可以解决这个问题

    打赏 评论

相关推荐 更多相似问题