刚学习redisson,不太熟悉。想请教下各位前辈。我加读锁,每次访问休眠5秒,并打印时间。第一次访问 间隔三秒后 第二次访问。正常打印时间因该是
0秒 3秒 5秒 8秒个打印一次。但是代码结果是 0 5 5 10 各打印一次
[code=java]
@GetMapping("/read")
@ResponseBody
public String readValue() {
System.out.println(LocalDateTime.now());
RReadWriteLock readWriteLock = redissonClient.getReadWriteLock("rw-lock");
String s = "";
RLock rLock = readWriteLock.readLock();
try {
rLock.lock();
s = redisTemplate.opsForValue().get("writeValue");
Thread.sleep(5000);
} catch (Exception e) {
e.printStackTrace();
} finally {
rLock.unlock();
System.out.println(LocalDateTime.now());
}
return s;
}
[/code]
可以在多线程环境中模拟测试下读写锁,你这种手动调用干扰因素太多
您好,我是问答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题。
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
解决了吗?我也是同样的问题。