Files
weave-scope/vendor/github.com/aws/aws-sdk-go/internal/sdkrand/locked_source.go
Bryan Boreham e49c2dcb84 Update aws-sdk-go library to latest release
From version 1.0.5 to version 1.15.74.
Simply because the old version was really old.
2018-11-13 15:08:30 +00:00

30 lines
538 B
Go

package sdkrand
import (
"math/rand"
"sync"
"time"
)
// lockedSource is a thread-safe implementation of rand.Source
type lockedSource struct {
lk sync.Mutex
src rand.Source
}
func (r *lockedSource) Int63() (n int64) {
r.lk.Lock()
n = r.src.Int63()
r.lk.Unlock()
return
}
func (r *lockedSource) Seed(seed int64) {
r.lk.Lock()
r.src.Seed(seed)
r.lk.Unlock()
}
// SeededRand is a new RNG using a thread safe implementation of rand.Source
var SeededRand = rand.New(&lockedSource{src: rand.NewSource(time.Now().UnixNano())})