在 synchronized (obj) {代码块中嵌套 synchronized (obj) {什么场景下需要这样写?

在 synchronized (obj) {代码块中嵌套 synchronized (obj) {的用法叫可重入锁是吧?这种写法有什么作用?为什么会需要这样写,什么场景下需要这样写?

阅读 4.2k
2 个回答

函数互相调用或者递归调用的时候,每个函数里都对同一个对象加锁

同一个类中的函数互相调用,其实最终也只会获取一把锁。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题