Package icu.easyj.core.sequence.impls
Class AtomicLongSequenceServiceImpl
java.lang.Object
icu.easyj.core.sequence.impls.AtomicLongSequenceServiceImpl
- All Implemented Interfaces:
ISequenceService
@LoadLevel(name="atomic-long",
order=999)
public class AtomicLongSequenceServiceImpl
extends Object
implements ISequenceService
基于
AtomicLong 实现的内存序列服务
主要用途: 1)单机单应用运行时才能使用此序列服务。 2)运行单元测试时,用于模拟Mock序列服务。
特点:性能高。
使用说明:应用启动时,需要指定其初始值。
- Author:
- wangliang181230
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionlong获取当前序列值getAtomicLong(String seqName) long获取下一序列值long设置序列值
-
Constructor Details
-
AtomicLongSequenceServiceImpl
public AtomicLongSequenceServiceImpl(long initialValue) -
AtomicLongSequenceServiceImpl
public AtomicLongSequenceServiceImpl()
-
-
Method Details
-
currVal
Description copied from interface:ISequenceService获取当前序列值- Specified by:
currValin interfaceISequenceService- Parameters:
seqName- 序列名- Returns:
- 当前序列值
-
nextVal
Description copied from interface:ISequenceService获取下一序列值注意:实现类中不允许抛出 NotSupportedException,该方法是序列服务必须要支持的功能。
- Specified by:
nextValin interfaceISequenceService- Parameters:
seqName- 序列名- Returns:
- 下一序列值
-
setVal
Description copied from interface:ISequenceService设置序列值- Specified by:
setValin interfaceISequenceService- Parameters:
seqName- 序列名newVal- 新的序列值- Returns:
- previousVal 前序列值:null=没有序列值 | -1=未知
-
getAtomicLong
-