uuid是谷歌开发的生成16字节UUID的模块,实现了RFC4122;对UUID的v1,v2,v3,v4,v5等各个版本都有实现
一般来说, 如果只是要生成唯一序列号的话,通常用v4版本,New()和NewRandom()都可以生成v4, New是对NewRandom的封装把error处理成panics了,但是理论上几乎是不会有发生panics的可能的。
1package main
2
3import (
4 "fmt"
5 "github.com/google/uuid"
6)
7
8func main() {
9 for i := 0; i < 10; i++ {
10 id := uuid.New()
11 fmt.Printf("%s %s\n", id, id.Version().String())
12 }
13
14 for i := 0; i < 10; i++ {
15 id2,err := uuid.NewRandom()
16 if err != nil{
17 fmt.Printf("%v\n", err)
18 }
19 fmt.Printf("%s %s\n", id2, id2.Version().String())
20 }
21}
评论