StackTc 2018-07-10 01:13 采纳率: 90.9%
浏览 880
已结题

关于redis分布式锁的使用,小弟有疑问

RedisLock lock = new RedisLock(redisTemplate, taskId, 50000, 60000);
这是a服务端初始化锁
方法aMethod里面先加锁,lock.lock()然后在Amethod里面调用服务端b的方法bMethod
在进入bMethod方法也用了
RedisLock lock = new RedisLock(redisTemplate, taskId, 50000, 60000);
然后去lock,在本人的理解下aMethod还没有unlock,bMethod是获取不到锁的,
但是代码中却是这么写的,本人很不理解。
希望大佬说一下。redis是同一个。

  • 写回答

3条回答 默认 最新

  • kanbujankei 2018-07-10 01:57
    关注

    我怎么柑橘没啥问题。对a方法加锁是a的锁,b方法加锁是b的锁,这个两个锁不存在你说的在a方法中调用b方法b方法就获取不到锁了。

    评论

报告相同问题?

悬赏问题

  • ¥15 用verilog实现tanh函数和softplus函数
  • ¥15 求京东批量付款能替代天诚
  • ¥15 slaris 系统断电后,重新开机后一直自动重启
  • ¥15 51寻迹小车定点寻迹
  • ¥15 谁能帮我看看这拒稿理由啥意思啊阿啊
  • ¥15 关于vue2中methods使用call修改this指向的问题
  • ¥15 idea自动补全键位冲突
  • ¥15 请教一下写代码,代码好难
  • ¥15 iis10中如何阻止别人网站重定向到我的网站
  • ¥15 滑块验证码移动速度不一致问题