优化时间回拨处理逻辑
This commit is contained in:
@@ -136,16 +136,19 @@ class Genid {
|
||||
if (currentTimeTick < this._LastTimeTick) {
|
||||
if (this._TurnBackTimeTick < 1) {
|
||||
this._TurnBackTimeTick = this._LastTimeTick - 1;
|
||||
this._TurnBackIndex++;
|
||||
// 每毫秒序列数的前 5 位是预留位,0 用于手工新值,1-4 是时间回拨次序
|
||||
// 支持 4 次回拨次序(避免回拨重叠导致 ID 重复),可无限次回拨(次序循环使用)。
|
||||
if (this._TurnBackIndex > 4) {
|
||||
this._TurnBackIndex = 1;
|
||||
}
|
||||
this.BeginTurnBackAction(this._TurnBackTimeTick);
|
||||
}
|
||||
|
||||
this._TurnBackIndex++;
|
||||
// 每毫秒序列数的前 5 位是预留位,0 用于手工新值,1-4 是时间回拨次序
|
||||
// 支持 4 次回拨次序(避免回拨重叠导致 ID 重复),可无限次回拨(次序循环使用)。
|
||||
if (this._TurnBackIndex > 4) {
|
||||
this._TurnBackIndex = 1;
|
||||
}
|
||||
|
||||
return this.CalcTurnBackId(this._TurnBackTimeTick);
|
||||
}
|
||||
|
||||
// 时间追平时,_TurnBackTimeTick 清零
|
||||
if (this._TurnBackTimeTick > 0) {
|
||||
this.EndTurnBackAction(this._TurnBackTimeTick);
|
||||
|
||||
Reference in New Issue
Block a user