yitter / IdGenerator

💎多语言实现,高性能生成唯一数字ID。 💎优化的雪花算法(SnowFlake)——雪花漂移算法,在缩短ID长度的同时,具备极高瞬时并发处理能力(50W/0.1s)。 💎原生支持 C#/Java/Go/Rust/C/JavaScript/TypeScript/Python/Pascal 多语言,提供其它适用于其它语言的多线程安全调用动态库(FFI)。💎支持容器环境自动扩容(自动注册 WorkerId ),单机或分布式唯一IdGenerator。💎顶尖优化,超强效能。
MIT License
2.59k stars 371 forks source link

M1方式 初始化为什么需要暂停500ms #107

Closed flybull closed 3 months ago

flybull commented 3 months ago

问下 M1方式 初始化为什么需要暂停500ms.

flybull commented 3 months ago

原因: 防止时间回拨 根源: lasttime没有持久化 异常: 如果多次重启时,系统时间回拨,可能导致生成id重复

问题: sleep 500ms似乎仍然无法彻底解决时间回拨导致id重复问题