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 求差集那个函数有问题,有无佬可以解决
  • ¥15 MATLAB动图问题
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名