https://github.com/redisson/redisson/wiki/2.-%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95 (中文配置文档地址)
<!-- https://mvnrepository.com/artifact/org.redisson/redisson --> <dependency> <groupId>org.redisson</groupId> <artifactId>redisson</artifactId> <version>3.13.2</version> </dependency>
@Bean(destroyMethod = "shutdown") RedissonClient redisson() throws IOException{ //1.创建配置 Config config = new Config(); config.useSingleServer().setAddress("redis://192.168.56.10:6379"); //2.根据config,创建RedissonClient对象 return Redisson.create(config); }
A、B方法共用一号锁,可重入锁 避免死锁
//1.调用getLock 获取一把锁,只要锁名一样就是同一把锁 RLock lock = redissonClient.getLock("my-lock"); //2.加锁 lock.lock(); try{ System.out.println("加锁成功,执行业务..."+Thread.currentThread().getId()); Thread.sleep(30000); } catch (InterruptedException e) { e.printStackTrace(); } finally { //3.解锁 System.out.println("释放锁。。。"+Thread.currentThread().getId()); lock.unlock(); }
Redisson-lock
原文:https://www.cnblogs.com/sgrslimJ/p/13716162.html