注释类型 Lock4j
分布式锁注解
- 作者:
- zengzhihong TaoYu
-
可选元素概要
可选元素修饰符和类型可选元素说明longboolean业务方法执行完后(方法内抛异常也算执行完)自动释放锁,如果为false,锁将不会自动释放直至到达过期时间才释放expire()Class<? extends LockExecutor>longClass<? extends LockFailureStrategy>失败策略Class<? extends LockKeyBuilder>key生成器策略String[]support SPEL expresion 锁的key = name + keys用于多个方法锁同一把锁 可以理解为锁资源名称 为空则会使用 包名+类名+方法名
-
元素详细资料
-
name
String name用于多个方法锁同一把锁 可以理解为锁资源名称 为空则会使用 包名+类名+方法名- 返回:
- 名称
- 默认值:
- ""
-
executor
Class<? extends LockExecutor> executor- 返回:
- lock 执行器
- 默认值:
- com.baomidou.lock.executor.LockExecutor.class
-
keys
String[] keyssupport SPEL expresion 锁的key = name + keys- 返回:
- KEY
- 默认值:
- {""}
-
expire
long expire- 返回:
- 过期时间 单位:毫秒
过期时间一定是要长于业务的执行时间. 未设置则为默认时间30秒 默认值:Lock4jProperties.expire
- 默认值:
- -1L
-
acquireTimeout
long acquireTimeout- 返回:
- 获取锁超时时间 单位:毫秒
结合业务,建议该时间不宜设置过长,特别在并发高的情况下. 未设置则为默认时间3秒 默认值:Lock4jProperties.acquireTimeout
- 默认值:
- -1L
-
autoRelease
boolean autoRelease业务方法执行完后(方法内抛异常也算执行完)自动释放锁,如果为false,锁将不会自动释放直至到达过期时间才释放expire()- 返回:
- 是否自动释放锁
- 默认值:
- true
-
failStrategy
Class<? extends LockFailureStrategy> failStrategy失败策略- 返回:
- LockFailureStrategy
- 默认值:
- com.baomidou.lock.LockFailureStrategy.class
-
keyBuilderStrategy
Class<? extends LockKeyBuilder> keyBuilderStrategykey生成器策略- 返回:
- LockKeyBuilder
- 默认值:
- com.baomidou.lock.LockKeyBuilder.class
-