in src/main/java/org/apache/skywalking/banyandb/commons/datacarrier/common/AtomicRangeInteger.java [40:51]
public final int getAndIncrement() {
int next;
do {
next = this.values.incrementAndGet(VALUE_OFFSET);
if (next > endValue && this.values.compareAndSet(VALUE_OFFSET, next, startValue)) {
return endValue;
}
}
while (next > endValue);
return next - 1;
}