From abeabeeb611d6547dbf427784165e0399f2e11ca Mon Sep 17 00:00:00 2001 From: charlie <3140647@qq.com> Date: Mon, 28 Mar 2022 00:10:16 +0800 Subject: [PATCH] rnd --- rand/rand.go | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/rand/rand.go b/rand/rand.go index a05da8e..e079b12 100644 --- a/rand/rand.go +++ b/rand/rand.go @@ -22,6 +22,15 @@ const ( _ = allChars + "/+" ) +var ( + randSource mrnd.Source = mrnd.NewSource(time.Now().UnixNano()) + randLock sync.Mutex +) + +func init() { + mrnd.Seed(time.Now().UnixNano()) +} + type charScope struct { bytes []byte length int @@ -65,9 +74,6 @@ var ( AllChars = StringScope(allChars) // 所有字符 ) -var randSource mrnd.Source = mrnd.NewSource(time.Now().UnixNano()) -var randLock sync.Mutex - // 生成指定长度的随机字符串 func (scope *charScope) RandString(length int) string { n := length @@ -110,11 +116,6 @@ func RandBytes(len int) ([]byte, error) { return r, err } -// func randNumber(max int64) (int64, error) { -// r, err := rand.Int(rand.Reader, big.NewInt(max+1)) -// return r.Int64(), err -// } - func randInt63() int64 { var v int64 @@ -126,6 +127,5 @@ func randInt63() int64 { } func randNumber2(max int) int { - rnd := mrnd.New(randSource) - return rnd.Intn(max) + return mrnd.Intn(max) }