-
Notifications
You must be signed in to change notification settings - Fork 598
Open
Description
- 假设当前使用的号段为①
- 调用
nextId多次后,会走进loadNext, 假设next = querySegmentId()里的querySegmentId已经执行完了,等待赋值给next- 假设这时候查到的号段为②
- 继续调用
nextId直到用完,会走进loadCurrent。然后因为上面的next还没赋值,所以会走进querySegmentId- 假设这时候查到的号段为③
tinyid/tinyid-base/src/main/java/com/xiaoju/uemc/tinyid/base/generator/impl/CachedIdGenerator.java
Line 36 in 49976d3
| if (next == null) { |
tinyid/tinyid-base/src/main/java/com/xiaoju/uemc/tinyid/base/generator/impl/CachedIdGenerator.java
Line 69 in 49976d3
| next = querySegmentId(); |
造成的结果: ①号段使用完了,③号段接着用,然后才可能用到②号段
Metadata
Metadata
Assignees
Labels
No labels