Loading... ```golang // 生成20位不重复的数字字符串 func generateUniqueString() string { // 使用互斥锁确保并发安全 var mu sync.Mutex // 获取当前的纳秒时间戳 timestamp := time.Now().UnixNano() // 生成计数器,使用互斥锁确保并发安全 mu.Lock() counter := rand.Intn(99999) // 这里可以根据需求调整范围 mu.Unlock() // 将纳秒时间戳和计数器结合 combined := strconv.FormatInt(timestamp*3, 10)[:15] + fmt.Sprintf("%05d", counter) // 如果长度不足20位,则使用随机数补足 for len(combined) < 20 { combined += strconv.Itoa(rand.Intn(10)) } // 截取前20位,确保长度为20位 return combined[:20] } ``` > 基本上能满足20位的业务需求 其它同理 但是非抬杠说一秒能生成十万次那没办法 最后修改:2023 年 08 月 05 日 © 允许规范转载 打赏 赞赏作者 微信 赞 0 如果觉得我的文章对你有用,请随意赞赏
2 条评论
内容的丰富性和深度让人仿佛置身于知识的海洋,受益匪浅。
案例丰富,数据详实,论证扎实可信。